Python 不接收头刮伤ProxyMesh
我对Scrapy/ProxyMesh很陌生。 我对Proxymesh服务器的请求似乎正在运行,因为我在Proxymesh网站上看到了我的bandwith消费,并且meta.proxy在我的日志中是正确的。 但是,当我在Scrapy中记录响应头时,我没有收到我应该收到的X-Proxymesh-IP。 这是我的密码。我做错了什么 这是我的中间件Python 不接收头刮伤ProxyMesh,python,proxy,header,scrapy,Python,Proxy,Header,Scrapy,我对Scrapy/ProxyMesh很陌生。 我对Proxymesh服务器的请求似乎正在运行,因为我在Proxymesh网站上看到了我的bandwith消费,并且meta.proxy在我的日志中是正确的。 但是,当我在Scrapy中记录响应头时,我没有收到我应该收到的X-Proxymesh-IP。 这是我的密码。我做错了什么 这是我的中间件 class Proxymesh(object): def __init__(self): logging.debug('Initialized
class Proxymesh(object):
def __init__(self):
logging.debug('Initialized Proxymesh middleware')
self.proxy_ip = 'http://host:port'
def process_request(self, request, spider):
logging.debug('Processing request through proxy IP: ' + self.proxy_ip)
request.meta['proxy'] = self.proxy_ip
这些是我在蜘蛛中的设置
custom_settings = {
"DOWNLOADER_MIDDLEWARES": {
"projectName.middlewares.proxymesh.Proxymesh" : 1,
}
这就是响应头的外观
['Set-Cookie']:['__cfduid=d88d4e4cb7... HttpOnly']
['Vary']:['User-Agent,Accept-Encoding']
['Server']:['cloudflare-nginx']
['Date']:['Thu, 19 Oct 2017 10...38:10 GMT']
['Cf-Ray']:['3b031b30cbef1565-CDG']
['Content-Type']:['text/html; charset=UTF-8']
谢谢你的帮助也许你也需要这样做
DOWNLOADER_MIDDLEWARES = {
'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware': 1,
}
同样在回调函数中,您确定正在打印
响应。标题不知道这是否相关,但我将在这里发布它。proxymesh和scrapy或python请求存在问题。
连接到代理时,会向代理服务发送连接请求,以便创建一个将转发实际请求的隧道。
如果请求成功,proxymesh会在连接请求的确认响应中添加X-proxymesh-IP。scrapy完全忽略了这个头,因为它只考虑实际请求的响应头
这只发生在HTTPS请求上,因为实际请求的内容是加密的
参考资料:
Hey@Umair添加httpproxy中间件不会改变任何事情。此外,响应头打印在我的spider的回调中。有没有其他方法可以访问这些X-Proxymesh-IP头?几个月前我就用过Proxymesh。。。它应该可以正常工作。。。您可以分享您的完整代码吗?同时请确保您的代理是否正常工作。刮取任何网站IP以检查返回的IP