检查用于请求Python/Scrapy + ProxyMesh的IP地址

Tur*_*uro 6 python proxy request scrapy web-scraping

我开始在Scrapy中使用ProxyMesh.ProxyMesh应该在一个端口上提供IP地址池.下面的示例代码代码在循环中重复,中间件启用,总体而言这很好.我可以跟踪(如果是这样 - 如何?)每个特定请求使用哪个IP地址?

request = scrapy.Request(producturl, self.parse_product_info)
request.meta['proxy'] = 'http://uk.proxymesh.com:xxx'
yield request
Run Code Online (Sandbox Code Playgroud)

我在SOF上发现了类似的帖子,但没有解决这个具体问题.

eLR*_*uLL 5

就像评论中指定的那样,信息来自响应头,只需检查它:

def parse_response(self, response):
    print response.headers
Run Code Online (Sandbox Code Playgroud)

您应该会看到X-Proxymesh-Ip带有指定代理的标头。

另一种选择是使用crawlera,它提供更多功能(如标题、会话和 cookie 处理)和更好的文档。