我正在使用以下带有scrapy的库,以便通过轮换代理从IP发出请求。
这可能停止了工作,而是使用了我的 IP。所以我想知道是否有回退,或者我是否不小心更改了配置。
我的设置如下所示:
DOWNLOADER_MIDDLEWARES = {
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': None,
'scrapy_fake_useragent.middleware.RandomUserAgentMiddleware': 400,
'scrapy.downloadermiddlewares.retry.RetryMiddleware': 90,
'scrapy_proxies.RandomProxy': 100,
'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
}
PROXY_LIST = '/Users/user/test_crawl/proxy_list.txt'
PROXY_MODE = 0
代理列表:
http://147.30.82.195:8080
http://168.183.187.238:8080
回溯:
[scrapy.proxies] DEBUG: Proxy user pass not found
2018-12-27 14:23:20 [scrapy.proxies] DEBUG: Using proxy
<http://168.183.187.238:8080>, 2 proxies left
2018-12-27 14:23:20 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.example.com/file.htm> (referer: https://www.example.com)
找不到用户通行证的 DEBUG 输出应该没问题,因为它表明我没有使用用户/通行证进行身份验证。
example.com 服务器上的日志文件直接显示我的 IP,而不是代理 IP。
这曾经有效,所以我想知道如何让它恢复工作。
scrapy-proxy 期望代理具有密码。如果密码为空,则忽略代理。
它可能应该失败,就像没有代理时一样,但它什么也不做,这会导致没有配置代理,而是使用您的 IP。
我会说你应该在上游报告这个问题,但该项目似乎已经死了。因此,除非您愿意分叉项目并自己解决问题,否则您就不走运了。