【问题标题】:How to scrape pages originating from the same domain on Heroku如何在 Heroku 上抓取来自同一域的页面
【发布时间】:2013-02-09 01:03:05
【问题描述】:

我创建了一个 Facebook 风格的 URL 抓取工具来发布内容。

当有人输入一个 URL 时,它会发送一个请求,在后端,我使用 Nokogiri 抓取 URL 以提取信息来构建帖子。

它适用于所有其他网站,如 apple.com、sony.com,但是当我使用来自我的源域(“mywebsite.com”)的链接时,它会超时,除了 Heroku 超时请求之外没有显示任何错误30 秒后。如果我从计算机上的本地主机上抓取我的域,它就可以工作。

是否有某种来源规则阻止 Nokogiri 抓取来自同一域的页面?

我正在使用 Ruby On Rails 3.1.10、Nokogiri 1.4.7 和 Heroku Cedar Stack。

【问题讨论】:

    标签: ruby-on-rails ruby heroku nokogiri


    【解决方案1】:

    抓取是在后台作业中运行还是通过网络工作者运行?你只有1个dyno吗?如果您的应用只有 1 个网络工作者,那么它可能正忙于尝试抓取,因此无法提供页面。

    尝试将您的测功机缩放到 2,看看问题是否仍然存在。

    heroku ps:scale web=2
    

    【讨论】:

    • 这完全有道理,为什么它无法提供资产,因为网络工作者已经在工作了。我只是输入一些特殊情况逻辑以避免为另一个网络测功机付费。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-15
    • 2012-11-07
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    相关资源
    最近更新 更多