python requests get请求 如何获取所有请求
在Python中,使用requests
库发送HTTP GET请求非常简单。如果你想获取所有的请求,通常意味着你想记录或跟踪这些请求。这可以通过使用requests
的Session
对象和自定义的HTTPAdapter
来实现。
以下是一个如何实现这一功能的示例代码:
import requests from requests.adapters import HTTPAdapter from requests.packages.urllib3.response import HTTPResponse class LoggingHTTPAdapter(HTTPAdapter): def send_request(self, request, **kwargs): print(f"Sending {request.method} request to {request.url}") return super().send_request(request, **kwargs) def send(self, request, **kwargs): response = super().send(request, **kwargs) print(f"Received {response.status_code} response for {request.url}") return response # 创建一个session对象 session = requests.Session() # 将自定义的LoggingHTTPAdapter设置为所有HTTP请求的适配器 session.mount('http://', LoggingHTTPAdapter()) session.mount('https://', LoggingHTTPAdapter()) # 现在所有的请求都会被自动记录 response = session.get('http://example.com')
在这个例子中,我们定义了一个LoggingHTTPAdapter
类,它覆盖了send_request
和send
方法,以便打印出发送的请求和接收的响应。然后,我们创建了一个Session
对象,并将LoggingHTTPAdapter
挂载到所有的请求上。这样,通过这个session
对象发出的所有请求都会被记录。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)