Scrapy 的 HTTPS 回调中没有 X-ProxyMesh-IP,并不能证明流量走了直连。在隧道式 HTTPS 中,ProxyMesh 把路由标头放在 CONNECT 响应上;之后的网站响应位于 TLS 内部,不会自动包含那份更早的元数据。

如果回调里能看到该标头,要按条件读取:

exit_ip = response.headers.get(b'X-ProxyMesh-IP')
if exit_ip is not None:
    self.logger.info('Reported exit IP: %s', exit_ip.decode('ascii'))

这是提供商针对该次交互报告的出口地址,而不是所配置的入口主机名。

如果确实需要隧道元数据,请使用能暴露 CONNECT 标头的兼容 handler 集成。ProxyMesh 正是为此维护了一个;请核对其支持的 Scrapy 版本与下载 handler。爬虫的解析无法揭示传输层从未提供的标头。

把元数据与对应的连接关联起来。复用一条隧道并不会为每个页面再产生一次 CONNECT 响应。若要了解目标端观察到的独立来源地址,应检查该目标的入站连接,而不是把提供商标头当作万能的 IP 探测器。

相关文章