【发布时间】:2011-07-19 16:30:34
【问题描述】:
我有一个网站,需要在许多不同的网站上使用 Nokogiri 来提取数据。此过程使用delayed_job gem 作为后台作业运行。然而,每页运行大约需要 3-4 秒,因为它必须暂停并等待其他网站响应。 我目前只是通过基本上说来运行它们
Websites.all.each do |website|
# screen scrape
end
我想分批执行它们,而不是一个一个,这样我就不必等待每个站点的服务器响应(有时可能需要 20 秒)。
最好的 ruby 或 rails 方法是什么?
提前感谢您的帮助。
【问题讨论】:
-
这根本不是 Nokogiri 问题。您的延迟是由于 HTTP 请求等待远程主机返回页面而发生的。一旦页面被传递给 Nokogiri,它将几乎立即解析。
标签: ruby-on-rails screen-scraping nokogiri