【发布时间】:2021-11-10 11:21:32
【问题描述】:
在使用 python-requests 时,我想打印用于每个请求的 IP address,无论它是相同的静态 IP 还是轮换它,所以我的问题是,@ 中是否有方法987654323@ 或执行此工作的代码 sn-p?
【问题讨论】:
标签: python web-scraping beautifulsoup proxy python-requests
在使用 python-requests 时,我想打印用于每个请求的 IP address,无论它是相同的静态 IP 还是轮换它,所以我的问题是,@ 中是否有方法987654323@ 或执行此工作的代码 sn-p?
【问题讨论】:
标签: python web-scraping beautifulsoup proxy python-requests
我在另一个答案中找到了这个,但它应该在 python 中工作:
from requests.packages.urllib3.connectionpool import HTTPConnectionPool
def _make_request(self,conn,method,url,**kwargs):
response = self._old_make_request(conn,method,url,**kwargs)
sock = getattr(conn,'sock',False)
if sock:
setattr(response,'peer',sock.getpeername())
else:
setattr(response,'peer',None)
return response
HTTPConnectionPool._old_make_request = HTTPConnectionPool._make_request
HTTPConnectionPool._make_request = _make_request
import requests
r = requests.get('http://www.google.com')
print(r.raw._original_response.peer)
结果:
('142.250.184.36', 80)
【讨论】: