我想用草率构建一个Amazon Crawler。
它起作用了,但是在大约10个良好的代理之后,每个下一个代理获得Proxy <IP:PORT> is DEAD
我不明白为什么...
那是我的中间件
DOWNLOADER_MIDDLEWARES = {
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': None,'scrapy_user_agents.middlewares.RandomUserAgentMiddleware': 400,'rotating_proxies.middlewares.RotatingProxyMiddleware': 610,'rotating_proxies.middlewares.BanDetectionmiddleware': 620,}
我有1000个代理,大多数没有死,几乎所有的代理都在另一个爬虫上工作,但经过几轮后却没有在亚马逊上工作...
有人知道吗? 用户代理正常工作,并且代理服务器也在旋转,他在每个下一个“死”代理服务器上显示不同的IP和其他内容
这里是一个日志
2019-11-06 21:52:40 [rotating_proxies.expire] DEBUG: Proxy <http://XXX:XXX@XXXX:8080> is DEAD
2019-11-06 21:52:40 [rotating_proxies.middlewares] DEBUG: retrying <GET https://www.amazon.de/gp/offer-listing/B00VB2ISDM/ref=olp_f_used?f_primeEligible=true&f_usedacceptable=true&f_usedGood=true&f_used=true&f_usedLikeNew=true&f_usedVeryGood=true> with another proxy (failed 9 times,max retries: 300)
2019-11-06 21:52:40 [scrapy_user_agents.middlewares] DEBUG: Proxy is detected http://xxxx:8080
正如我所说,那里主要是在另一个网站上工作,因此没有像亚马逊爬虫上显示的那样死掉的代理人
我也尝试添加
DOWNLOAD_DELAY = 5
AUTOTHROTTLE_ENABLED = True
AUTOTHROTTLE_START_DELAY = 20
AUTOTHROTTLE_MAX_DELAY = 60
没有帮助