所以我想做的是刮这个网站:http://boxerbiography.blogspot.com/并创建一个HTML页面,我可以打印或发送到我的Kindle。
我正在考虑使用Hpricot,但我不太确定如何进行。
我如何设置它,所以它递归地检查每个链接,得到HTML,要么存储在一个变量或转储到主HTML页面,然后回到目录,并继续这样做?
你不需要告诉我具体怎么做,只需要告诉我如何去做背后的理论就可以了。
我真的要看一篇文章的来源(这是非常丑陋的btw),例如viewsource:http://boxerbiography.blogspot.com/2006/12/10-progamer-lim-yohwan-e-sports-icon.html和手动编程脚本提取某些标签之间的文本(例如h3, p等)?
如果我采用这种方法,那么我将不得不查看每章/每篇文章的每个单独来源,然后再这样做。有点违背了写脚本的目的,不是吗?
理想情况下,我想要一个脚本,将能够告诉JS和其他代码之间的区别,只是"文本"和转储它(格式化与适当的标题等)。
我很感激你的指导。
谢谢。
我建议使用Nokogiri而不是Hpricot。它更健壮,使用更少的资源,更少的bug,更容易使用,更快。
为了按时完成工作,我做了大量的抓取工作,不得不切换到Nokogiri,因为Hpricot会在某些页面上莫名其妙地崩溃。
检查这个RailsCast:
http://railscasts.com/episodes/190-screen-scraping-with-nokogiri:
http://nokogiri.org/http://www.rubyinside.com/nokogiri - ruby - html解析器和xml解析器- 1288. html
http://www.engineyard.com/blog/2010/getting-started-with-nokogiri/