有没有什么东西可以将html转换成纯文本(可能是nokogiri脚本)?一些可以保持断行的东西,但仅此而已。
如果我在googledocs上编写一些东西,比如this,并运行该命令,它会输出(删除css和javascript),如下所示:
\n\n\n\n\nh1. Test h2. HELLO THEREI am some teexton the next line!!!OKAY!#*!)$!
所以格式化都搞砸了。我相信有人已经在某处解决了这样的细节。
发布于 2010-03-24 11:35:37
实际上,这要简单得多:
require 'rubygems'
require 'nokogiri'
puts Nokogiri::HTML(my_html).text
不过,您仍然有换行符的问题,所以您必须自己弄清楚如何处理这些问题。
发布于 2010-03-24 11:36:19
您可以从如下内容开始:
require 'open-uri'
require 'rubygems'
require 'nokogiri'
uri = 'http://stackoverflow.com/questions/2505104/html-to-plain-text-with-ruby'
doc = Nokogiri::HTML(open(uri))
doc.css('script, link').each { |node| node.remove }
puts doc.css('body').text.squeeze(" \n")
发布于 2010-03-24 11:16:00
简单地去掉标签和多余的换行符可以接受吗?
html.gsub(/<\/?[^>]*>/, '').gsub(/\n\n+/, "\n").gsub(/^\n|\n$/, '')
第一次剥离标签,第二次将重复的换行符分解为一个,第三次删除字符串开始和结束处的换行符。
https://stackoverflow.com/questions/2505104
复制相似问题