我正在为我的 ruby on rails 项目寻找一个 ruby gem,用于从网页中提取内容。我找到了ruby-readability gem,但它不支持文章的多页。你能推荐一个也支持多页文章提取的gem吗?
或者我如何编码识别文章上的多个站点的能力?
谢谢
我正在为我的 ruby on rails 项目寻找一个 ruby gem,用于从网页中提取内容。我找到了ruby-readability gem,但它不支持文章的多页。你能推荐一个也支持多页文章提取的gem吗?
或者我如何编码识别文章上的多个站点的能力?
谢谢
您可以将Pismo之类的高级 gem与Mechanize结合使用,以迭代地遍历每个页面并连接文章的正文。为此,您需要知道哪个链接将您带到下一页。谷歌正在推动采用基于 rel 属性的约定
<a href="blog-post?page=2" rel='next'>next</a>
这是一个非常粗略的 ruby 代码草稿:
agent = WWW::Mechanize.new
agent.get("http://www.awesomeblog.com/amazing-article")
scraper.text = MyScraper.new(:text => Pismo::Document.new(agent.url))
while agent.page.link_with("rel='next'").click do
pismo_doc = Pismo::Document.new(agent.url)
scraper.text << pismo_doc.lede
end
scraper.save!
这是伪代码/疯狂的猜测(我不知道机械化的 API),但你明白了。