Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用selenium phantom js或python请求进行web抓取-每2-3页服务器返回一次';坏的';页_Python_Selenium_Selenium Webdriver_Web Scraping_Phantomjs - Fatal编程技术网

使用selenium phantom js或python请求进行web抓取-每2-3页服务器返回一次';坏的';页

使用selenium phantom js或python请求进行web抓取-每2-3页服务器返回一次';坏的';页,python,selenium,selenium-webdriver,web-scraping,phantomjs,Python,Selenium,Selenium Webdriver,Web Scraping,Phantomjs,我一直在用selenium/phantom js快乐地尖叫。最近,我注意到我正在抓取的一个网站开始返回一个“坏”页面(每2-3页没有相关内容的页面)-不清楚为什么。我使用python请求进行了测试,得到了类似的结果(问题),尽管它稍微好一点(在我得到一个糟糕的页面之前更像是3-4页) 我所做的: 我有一个页面url列表,我洗牌-所以它不太可能有相同的刮模式 我在两次请求之间有10-20秒的随机睡眠时间(没有一次是紧急的) 我试过用和不吃饼干的 我尝试了旋转IP地址(在刮擦之间反弹我的服务器并获得

我一直在用selenium/phantom js快乐地尖叫。最近,我注意到我正在抓取的一个网站开始返回一个“坏”页面(每2-3页没有相关内容的页面)-不清楚为什么。我使用python请求进行了测试,得到了类似的结果(问题),尽管它稍微好一点(在我得到一个糟糕的页面之前更像是3-4页)

我所做的:

  • 我有一个页面url列表,我洗牌-所以它不太可能有相同的刮模式
  • 我在两次请求之间有10-20秒的随机睡眠时间(没有一次是紧急的)
  • 我试过用和不吃饼干的
  • 我尝试了旋转IP地址(在刮擦之间反弹我的服务器并获得新的IP地址)
  • 我检查了robots.txt-没有做任何“不好”的事情
  • 用户代理的设置方式与我在笔记本电脑上的设置方式类似()
  • phantomjs DesiredCapabilities设置为与DesiredCapabilities.CHROME相同的字典(我实际上创建了自己的CHROME字典,并嵌入了我正在使用的真实CHROME版本)
  • 启用JavaScript(尽管我并不真正需要它)
  • 我使用
    service\u args=['--ignore ssl errors=true']设置ignore ssl errors
  • 我一天只做两次刮伤,每次间隔9小时。无论我是在笔记本电脑上运行代码,还是在云中的Ubuntu上运行代码,问题都是一样的


    想法?

    如果服务器正在限制或阻止您,您需要联系服务器管理员,让他将您列入白名单。 除了试着更慢地刮,你什么也做不了


    如果服务器过载,您可以尝试一天中的不同时间。如果服务器出现错误,请尝试复制并通知管理员。

    如果服务器正在限制或阻止您,您需要联系服务器管理员并让他将您列入白名单。 除了试着更慢地刮,你什么也做不了


    如果服务器过载,您可以尝试一天中的不同时间。如果服务器出现错误,请尝试复制并通知管理员。

    。IP地址更改/变化时,我如何/为什么被阻止?在我做的事情中是否有什么东西不断地说‘嘿,伙计们,又是我’?另外,尝试睡眠时间超过10分钟。没有区别:(那么它可能真的是一个服务器错误或限制。如果失败,您将不得不重试。有趣的是,当IP地址更改/变化时,我是如何/为什么被阻止的?我正在做的事情中是否有任何东西不断地说‘嘿,伙计们,又是我’?另外,尝试了超过10分钟的睡眠时间。没有区别:(那么这可能真的是一个服务器错误或限制。如果失败,您必须重试。我遇到了同样的问题,我注意到他们的api密钥作为请求头的一部分,并且api密钥在一段时间后过期。我遇到了同样的问题,我注意到他们的api密钥作为请求头的一部分,并且api密钥在一段时间后过期。