【问题标题】:Is there a possibility to show the IP address used in each request?是否有可能显示每个请求中使用的 IP 地址?
【发布时间】:2021-11-10 11:21:32
【问题描述】:

在使用 python-requests 时,我想打印用于每个请求的 IP address,无论它是相同的静态 IP 还是轮换它,所以我的问题是,@ 中是否有方法987654323@ 或执行此工作的代码 sn-p?

【问题讨论】:

标签: python web-scraping beautifulsoup proxy python-requests


【解决方案1】:

我在另一个答案中找到了这个,但它应该在 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)

【讨论】:

    猜你喜欢
    • 2022-01-20
    • 2011-07-31
    • 2020-01-10
    • 2011-04-10
    • 2021-08-06
    • 1970-01-01
    • 1970-01-01
    • 2016-12-09
    • 2016-12-24
    相关资源
    最近更新 更多