首页 > 编程语言 >python requests get请求 如何获取所有请求

python requests get请求 如何获取所有请求

时间:2024-05-20 11:51:18浏览次数:32  
标签:请求 get python LoggingHTTPAdapter request send session requests

在Python中,使用requests库发送HTTP GET请求非常简单。如果你想获取所有的请求,通常意味着你想记录或跟踪这些请求。这可以通过使用requestsSession对象和自定义的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_requestsend方法,以便打印出发送的请求和接收的响应。然后,我们创建了一个Session对象,并将LoggingHTTPAdapter挂载到所有的请求上。这样,通过这个session对象发出的所有请求都会被记录。

标签:请求,get,python,LoggingHTTPAdapter,request,send,session,requests
From: https://www.cnblogs.com/pingguomang/p/18201573

相关文章

  • 食物识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
    一、介绍食物识别系统。该项目通过构建包含11种常见食物类别(包括'Bread','Dairyproduct','Dessert','Egg','Friedfood','Meat','Noodles-Pasta','Rice','Seafood','Soup','Vegeta......
  • [998] Python unpacking operators (* and **)
    ref:Pythonunpackingoperators(*and**)(RECOMMENDED)ref:PythonFunctionsref:PythonUnpackDictionary:AComprehensiveGuideHerearesomecrucialthingsfortake-awayofthe unpackingoperators:Asingleasterisk * unpacksitemsfromlists,tupl......
  • python去除图片白边黑边
    主要用于去除图片的白边和黑边,比如在截图表情包的时候,通过小米的传送门保存图片的时候,图片往往会有黑边和白边,此时使用此脚本二次处理importosfromPILimportImage,ImageChopsdeftrim_white_border(image):bg=Image.new(image.mode,image.size,image.getpixel((0......
  • Skipping invalid relocation target,
      [55.732900]module:x86/modules:Skippinginvalidrelocationtarget,existingvalueisnonzerofortype1,loc0000000095d22a08,valffffffffc07aa525root@ubuntux86:#uname-aLinuxubuntux865.13.0-39-generic#44~20.04.1-UbuntuSMPThuMar2416:......
  • Invalid URI at UnityEngineInternal.WebRequestUtils.MakeInitialUrl (System.Stri
    问题背景:有一个项目用到3d模型,原来访问地址用的是域名,访问老是报跨域问题,于是换成了内网地址这么一换问题来了,控制台直接报错 FormatException:InvalidURIatUnityEngineInternal.WebRequestUtils.MakeInitialUrl(System.StringtargetUrl,System.StringlocalUrl)[0......
  • Python内置库:pathlib(文件路径操作)
    官方文档:pathlib—Object-orientedfilesystempaths一、基础使用遍历子目录使用通配符遍历文件拼接路径获取标准化后的绝对路径查询路径常规属性打开文件frompathlibimportPathprint('1.1查询指定目录的子目录')p=Path('D:/Envs')print([sub_pforsub_p......
  • VS2022 修改nuget包位置
    文章目录前言NuGet配置文件位置NuGet环境变量其他问题前言由于C盘的空间有限,NuGet的包位置默认又在C盘,这就很烦,只能去自己手动修改NuGet配置文件位置配置文件共有三处,添加下面的内容即可(高版本可以设置环境变量解决)<--添加下面的键值即可-->1234C:\Users......
  • 【PYTHON3】环境搭建+编程学习之路的开始——Windows系统
    一、概述在学习python开发语言之前需要安装好开发语言环境(也就是常说的开发环境)开发环境主要有:解释器和编辑器IDE,而其中的解释器是用来将代码转换成机器语言,python语言也就是解释器;编辑器用来写代码逻辑,python语言推荐的是pycharm,它是IDE集成开发环境,这里面有开发时需要的工具......
  • 【开源】2024最新python豆瓣电影数据爬虫+可视化分析项目
    项目介绍【开源】项目基于python+pandas+flask+mysql等技术实现豆瓣电影数据获取及可视化分析展示,觉得有用的朋友可以来个一键三连,感谢!!!项目演示[video(video-C9B87WwE-1716106102936)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=1204518067)(image-https......
  • Python __str__ 和 __repr__
    在Python中,__str__和__repr__是两个非常重要的特殊方法,它们用于定义对象的字符串表示形式,但它们的用途和场景稍有不同:__str__ 方法__str__方法提供了对象的“人性化”字符串表示,它的目的是为了方便人类阅读和理解。当你使用print()函数打印一个对象,或者直接将对象用在字......