【问题标题】:Will <insert popular website here> restrict me from accessing their website if I request it too many times?如果我请求的次数过多,<在此处插入热门网站> 会限制我访问他们的网站吗?
【发布时间】:2010-12-30 07:31:48
【问题描述】:

我问这个是因为我正在创建一个蜘蛛来从 blogger.com 收集数据,用于大学的数据可视化项目。

蜘蛛将在博主的browse function 上查找大约 17,000 个值,并(匿名)保存符合正确条件的某些值。

我一直在运行蜘蛛(用 PHP 编写),它运行良好,但我不想将我的 IP 列入黑名单或类似的东西。有没有人了解企业网站以及他们对此类事情的限制?

此外,如果有限制,我能做些什么来规避它们吗?目前,我能想到的可以稍微帮助解决这个问题的是;在对站点的调用之间添加随机延迟(0 到 5 秒之间)或通过随机代理运行脚本以伪装请求。

不得不像上面的方法那样做,这让我感觉好像我做错了。如果他们出于某种原因阻止我,我会很生气,因为 blogger.com 归谷歌所有,他们的主要产品是网络蜘蛛。尽管如此,他们的蜘蛛不会只向一个网站发送请求。

【问题讨论】:

    标签: php web-crawler blogger


    【解决方案1】:

    它们可能有某种限制,是的,有一些方法可以绕过它们(例如机器人农场和使用随机代理),但很可能它们都不完全合法,在技术上也不可行:)

    如果你是访问博主,难道你不能用API key 登录并直接查询数据吗?这将比抓取他们的页面更​​可靠,更不容易出现麻烦,无论如何都可能被禁止,并且一旦请求数量足够大以至于他们开始关心,就会导致麻烦。 Google 对每个 API 密钥允许的流量非常慷慨。

    如果一切都失败了,为什么不给他们写一封电子邮件。 Google 以对学术项目友好而闻名,如果需要,他们很可能会为您提供更多流量。

    【讨论】:

    • +1 用于 API 的使用。甚至 API 也会有一定的限制(例如每秒调用 x 次),但它会更稳定,最重要的是合法。
    • 谢谢,我什至不知道有 API。但是,Google 的博客 API 只允许您基于每个用户执行操作。我需要在每个位置或每个兴趣基础上获取东西。即我需要让所有具有特定位置或兴趣的用户。 (注意:当我说获得所有用户时,我实际上并不需要所有用户,100-500 之间就可以了)。我想,我需要给谷歌发电子邮件或改变我的方法。
    • 问他们总是有风险,如果他们拒绝你,他们就会知道你是谁。但我认为最好承担违反某些限制并被列入黑名单的风险。
    • 慢慢来吧。它可能没有被明确允许,但如果你只在一秒钟内击中它们一次或两次,它很容易在一夜之间完成。如果您想非常安全,请每隔几秒钟减速一次。就每小时的请求数而言,17K 值并不算多。
    • 要搜索特定查询,请尝试使用标准 Google API 参数:code.google.com/apis/gdata/docs/2.0/reference.html#Queries Blogger API 支持大多数标准 Google 参数,因此您可以阅读这些文档。这也可能有用:code.google.com/apis/blogger/docs/1.0/reference.html#Parameters
    【解决方案2】:

    由于您正在编写蜘蛛,请确保它读取robots.txt 文件并相应地执行。此外,HTTP 的规则之一是同一服务器上的并发请求不能超过 2 个。别担心,谷歌的服务器真的很强大。如果您当时只阅读第一页,他们可能甚至都不会注意到。如果注入1秒间隔,将完全无害。

    另一方面,使用僵尸网络或其他分布式方法被认为是有害行为,因为它看起来像 DDOS 攻击。你真的不应该朝那个方向思考。

    【讨论】:

    • +1 好点,尤其是看到他关心他的 IP 地址的好名声和声誉。
    • 感谢 robots.txt 的提示,我还没有考虑过这个。当您这样说时,似乎我的流量将在所有其他流向博客的流量中丢失,我可以想象会发生这种情况。 但是他们一定有合适的系统来匹配我的请求。
    • 服从robots.txt的主要+1。
    【解决方案3】:

    如果您想确定,请写一封电子邮件到 blogger.com 并询问他们。

    【讨论】:

      【解决方案4】:

      您可以通过 TOR 请求它,您每次都会有不同的 ip,但需要付出性能成本。

      【讨论】:

        猜你喜欢
        • 2018-06-16
        • 1970-01-01
        • 2016-11-27
        • 2019-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-08
        相关资源
        最近更新 更多