【问题标题】:Web scraping and proxy type网页抓取和代理类型
【发布时间】:2020-03-23 02:31:35
【问题描述】:

框架:Scrapy。

我目前正在使用网络抓取工具,但与服务器断开连接。 刮板将(最终)刮掉 100k 到 150k 页面,每个页面包含 11 个字段,其中包含将被刮掉的数据。

我的想法是刮刀每月使用一次。

完成后数据库的估计大小在 200mb 到 300mb 之间(不考虑带宽)。

我不知道我是否需要为此付费代理或是否可以使用免费代理。

任何建议(或我需要的代理提供商)都会得到极大的欢迎。

【问题讨论】:

    标签: python web-scraping scrapy bots proxies


    【解决方案1】:

    有几种技术可以避免与您正在抓取的服务器断开连接

    这是一些常见的技术

    您可以添加user agents,这里是librarythis page 中有关于如何使用user agents 的教程

    您可以转到您的 settings.py 并取消注释 DOWNLOAD_DELAY = x

    【讨论】:

      【解决方案2】:

      如果没有代理,您的 IP 地址很可能会被阻止,然后即使使用代理,您也可能会遇到阻止您抓取页面的验证码。

      如您所说,对于每月抓取 100K - 150K 页面,我强烈建议不要使用免费代理。免费代理的问题在于它们非常不可靠——你永远不知道谁在使用它们,它们被用来做什么,它们什么时候不再工作等等......这可能导致你的任何/所有代理被关闭或阻止,因此您的刮板在任何特定时刻都将不再工作。

      付费代理当然是必经之路,尽管它们可能会变得相当昂贵,而且众所周知,一些代理提供商会使用不正当的技术来获取 IP 地址。

      但是https://htmlapi.io(我的服务)可以为您弥补这一差距,并且可以免费开始使用(您甚至不需要创建帐户)。 HtmlAPI 返回您正在抓取的页面的原始 HTML 内容。它会自动为您处理轮换代理服务器、击败验证码、渲染 JavaScript 等等......

      您所要做的就是调用 API 并从网页中提取您需要的数据。 从命令行尝试:

      curl "https://htmlapi.io/example.com"
      

      【讨论】:

        猜你喜欢
        • 2021-07-06
        • 1970-01-01
        • 1970-01-01
        • 2020-06-18
        • 1970-01-01
        • 2019-04-24
        • 2023-04-03
        • 2020-10-24
        相关资源
        最近更新 更多