python常用模块学习:requests实例教程

2023年 7月 12日 85.6k 0

request模块用于构造模拟http消息的交互,自动化构造模拟http报文交互。

  • 常用方法
  • 方法 作用 备注
    r.status_code 返回响应状态码 r为请求体赋值的变量
    r.raw 返回响应体 urllib 的 response 对象,使用 r.raw.read() 读取
    r.content 字节方式的响应体,会自动解码gzip和deflate压缩
    r.text 字符串方式的响应体,会自动根据响应头部的字符编码进行解码
    r.headers 以字典对象存储服务器响应头,但是这个字典比较特殊,字典键不区分大小写,若键不存在则返回None
    r.elapsed.total_seconds() 获取rest请求响应的时间
    encode、decode encode():以某种格式进行编码 decode():以某种格式进行解码
    特殊方法
    r.json() Requests中内置的JSON解码器
    r.raise_for_status() 失败请求(非200响应)抛出异常
    r.text.encode("ISO-8859-1") "ISO-8859-1":是网页的一种的编码方式,此方法的作用是将get获取到的信息以此方式进行编码
  • 常用参数
  • 参数 含义
    url 请求的URL地址
    params GET请求参数
    data POST请求参数
    json 也是POST请求参数,要求服务端接收json格式的数据
    headers 请求头字典
    cookies cookie信息
    files 上传文件
    auth HTTP鉴权信息
    timeout 等待响应时间,单位:秒
    allow_redirects 是否允许重定向
    proxies 代理信息
    verify 是否校验证书
    stream 如果为False,则响应内容将直接全部下载
    cert 客户端证书地址
  • 实例
  • 去除request请求的告警
  • import urllib3 urllib3.disable_warnings() #去除警告

  • 设置重连次数
  • 基本上意思就是发出的网络请求比较频繁,requests内置的urllibs3不能及时的为我们断开连接,于是就会触发报错。 代码的基本意思就是断开连接、增加重试次数。 #设置重连次数 requests.adapters.DEFAULT_RETRIES = 15 # 设置连接活跃状态为False s = requests.session() s.keep_alive = False

  • 进行登录设备并存入cookie值
  • 实例中使用request的session方法实现持久化cookie值,使之仅登录一次设备,之后可直接使用该cookie值进行操作。
  • requests库的session会话对象可以跨请求保持某些参数。
  • python常用模块学习:requests实例教程

  • 读取csv文件内的数据
  • 实例中将文件信息以字典形式存入字典config内。
  • 通过对字典config内参数的提取达到取值的目的。
  • python常用模块学习:requests实例教程

  • 设置请求头信息
    • 'Authorization':是指设置一个固定的值,值的内容随意
    • 'Connection':每次连接过后都会关闭此次连接的请求

    session.headers = {'Authorization': 'Basic a2FyYWY6a2FyYWY=', 'Connection': 'close'}

  • 解决Python3 控制台输出InsecureRequestWarning的问题
  • 使用Python3 requests发送HTTPS请求,已经关闭认证(verify=False)情况下,控制台会输出以下错误: C:Users****Python35libsite-packagesurllib3connectionpool.py:986: InsecureRequestWarning: Unverified HTTPS request is being made to host 'iam.cn-north-4.myhuaweicloud.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings InsecureRequestWarning import urllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

    相关文章

    JavaScript2024新功能:Object.groupBy、正则表达式v标志
    PHP trim 函数对多字节字符的使用和限制
    新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
    使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
    为React 19做准备:WordPress 6.6用户指南
    如何删除WordPress中的所有评论

    发布评论