首页 > 其他分享 >requests库

requests库

时间:2023-02-16 16:33:06浏览次数:46  
标签:返回 请求 json post requests 字典

Python requests库核心源码解析

1、常用方法

  requests.get()   get请求,通过params传参

  requests.post()  post请求,通过data,json传参

   (1)data传参:参数是dict,请求头是Content-Type:application/x-www-urlencoded,表示通过表单传参

       格式:a=1&b=2

   (2)json传参:参数是dict/str,请求头是Content-Type:application/json

      格式:{'a':1,'b':2}

  requests.put()

  requests.delete()

  requests.request()

2、重要的请求头

  Content-Type:传参内容格式

    application/x-www.urlencoded  表单

    multipart/form-data  表单里有文件上传

    text/plain   文本

    binary  二进制文件

  Accept:客户端接受的数据格式

  X-Requested-With:异步请求

  User-Agent:客户端的用户类型

  Cookie:Cookie信息

3、requests.request()核心方法

  请求参数:

    method:请求方法,get/post/delete/put/...

    url:接口地址

    params:字典或元组列表或字节,作为参数增加到url中;一般用于get请求,post请求也可用(不常用)

    data:字典,元组列表,字节或文件对象,作为post请求的参数(可文件上传)

    json:JSON格式的数据,作为post请求的json参数

    headers:请求头,字典类型

    cookies:cookie信息,字典类型或者cookie对象

    files:字典类型,传输文件,作为post请求文件流数据

    auth:字典类型,HTTP认证

    allow_redirects:bool类型,是否允许重定向

  返回(response对象):

    

    apparent_encoding:编码方式

    close():关闭与服务器的连接

    content:返回响应的内容,以字节为单位

    cookies:返回一个 CookieJar 对象,包含了从服务器发回的 cookie

    elapsed:返回一个 timedelta 对象,包含了从发送请求到响应到达之间经过的时间量,可以用于测试响应速度。比如 r.elapsed.microseconds 表示响应到达需要多少微秒

    encoding:解码 r.text 的编码方式

    headers:返回响应头,字典格式

    history:返回包含请求历史的响应对象列表(url)

    is_permanent_redirect:如果响应是永久重定向的 url,则返回 True,否则返回 False

    is_redirect:如果响应被重定向,则返回 True,否则返回 False

    iter_content():迭代响应

    iter_lines():迭代响应的行

    json():返回结果的 JSON 对象 (结果需要以 JSON 格式编写的,否则会引发错误)

    links:返回响应的解析头链接

    next:返回重定向链中下一个请求的 PreparedRequest 对象

    ok:检查 "status_code" 的值,如果小于400,则返回 True,如果不小于 400,则返回 False

    raise_for_status():如果发生错误,方法返回一个 HTTPError 对象

    reason:响应状态的描述,比如 "Not Found" 或 "OK"

    request:返回请求此响应的请求对象

    status_code:返回 http 的状态码,比如 404 和 200(200 是 OK,404 是 Not Found)

    text:返回响应的内容,unicode 类型数据

    url:返回响应的 URL

4、params、data、json区别

  params:get请求 中接收参数,params=字典类型的数据

  data:post请求中接收参数,data=字典格式的数据(content_type为键值对的编码格式)

  json:post请求中接收参数,json=字典格式的数据(content_type为application/json),使用json接收会自动将字典转换为json;也可以用data接收json格式的数据,data=json.dump(字典格式的数据)

    

    

    

 

标签:返回,请求,json,post,requests,字典
From: https://www.cnblogs.com/Will-Zh/p/17071759.html

相关文章

  • requests httpx post中json中文编码问题
    背景requests、httpxpost提交json数据时,默认在库中ensure_ascii为True。会对中文进行unicode编码。但是有的时候服务端并没有处理中文,没有进行解码,而我们又改不......
  • import requests问题求解
    提问: python运行代码总是会报错,已经在cmd里下载了requests,也还是会报错,究竟是什么问题。  解答: 检查一下你运行代码时,使用的Python版本,和你安装的requests模块......
  • 解决:ChatGPT too many requests in 1 hour.Try again later 怎么办?OpenAI 提示
    ChatGPT提示:Toomanyrequestsin1hour.Tryagainlater.如下图,我多次访问也出现同样的问题。中文意思是太多的请求数量在当前1个小时内,请稍后重试。那怎么办?怎么......
  • requests基本使用
    requests基本使用​ 官方文档:http://cn.python‐requests.org/zh_CN/latest/​ 快速上手:http://cn.python‐requests.org/zh_CN/latest/user/quickstart.html​ 安装:pip......
  • requests库的使用
    requests库的使用概述requests库用于网页请求并接收返回信息,requets库的功能有:常用请求请求方式GET请求POST请求请求携带的信息请求头headers设置cookiesS......
  • requests爬取图片
    #requests库爬取图片importrequestsfrombs4importBeautifulSoupdefspider():url='https://www.sogou.com/web'keyword=input('请输入信息')headers......
  • Python requests.Session 协程 下载文件
    Pythonrequests.Session协程下载文件 #coding:utf-8fromgeventimportmonkeymonkey.patch_all()fromgevent.poolimportPoolimportgeventimportrequ......
  • requests库和BeautifulSoup库
    requests库requests是一个基于HTTP协议来使用网络的第三库安装pipinstallrequests主要方法方法说明requsts.get()获取网页,对应HTTP中的GET方法requst......
  • requests.exceptions.ChunkedEncodingError: ("Connection broken: InvalidChunkLengt
    Traceback(mostrecentcalllast):File"D:\code_tool\spiderYesmro3\venv\lib\site-packages\urllib3\response.py",line761,in_update_chunk_lengthself.c......
  • 接口自动化测试|Requests库的安装与介绍
    Requests:Requests模块简介与安装Requests模块简介在python的标准库中,虽然提供了urllib,utllib2,httplib,但是做接口测试,requests使用更加方便快捷,正如官方说的,“让HTTP服务人......