IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> Python:requests高级用法(官网笔记) -> 正文阅读

[网络协议]Python:requests高级用法(官网笔记)

1.Session()方法

2.请求头/响应头

import requests
r = requests.get('https://www.baidu.com')
print(r.request.headers)        # 请求头
print(r.headers)                # 响应头

3.Prepared Requests

4.SSL证书验证

使用说明
verify=False不进行SSL证书验证
verify='/path/to/certfile'指定受信任 CA 证书的 CA_BUNDLE 文件或目录;如果verify设置为目录的路径,则必须使用c_rehashOpenSSL 提供的实用程序处理该目录。
REQUESTS_CA_BUNDLE环境变量指定CA证书
CURL_CA_BUNDLE指定CA证书

5.客户端证书

通过cert指定客户端证书、单个文件(包含私钥和证书)或两个文件路径的元组:

requests.get('https://kennethreitz.org', cert=('/path/client.cert', '/path/client.key'))

注意:本地证书的私钥必须未加密。目前,Requests 不支持使用加密密钥。?

6.CA证书

7.Body Content Workflow

默认情况下,当发出请求时,会立即下载响应正文;在请求时添加参数stream=True会推迟下载响应正文,直到访问Response.content时才下载;

8.Keep-Alive

9.Streaming Uploads

Requests 支持流式上传,允许您发送大型流或文件而无需将它们读入内存。流式传输和上传,只需为您的 body 提供一个类似文件的对象:

with open('massive-body', 'rb') as f:
    requests.post('http://some.url/streamed', data=f)

注意:强烈建议您以二进制模式打开文件。这是因为 Requests 可能会尝试Content-Length为您提供标头,如果这样做,此值将设置为文件中的字节数。如果以文本模式打开文件,可能会出现错误。?

10.?Chunk-Enabled Requests

11.POST Multiple Multipart-Encoded Files;一次上传多个文件

url = 'https://httpbin.org/post'
multiple_files = [
    ('images', ('foo.png', open('foo.png', 'rb'), 'image/png')),
    ('images', ('bar.png', open('bar.png', 'rb'), 'image/png'))]
r = requests.post(url, files=multiple_files)
r.text

12.Event Hooks

import requests
url = 'https://httpbin.org/post'

# 设置钩子函数
def verify_res(res, *args, **kwargs):
    print('url', res.url)
    res.status='PASS' if res.status_code == 200 else 'FAIL'

res = requests.get(url, hooks={'response': verify_res})
print(res.text)
print(res.status)

13.Custom Authentication

14.Streaming Requests

15.Proxies

16.SOCKS

17.Compliance

18.Encodings

19.HTTP Verbs

20.Custom Verbs

21.Link Headers

22.Transport Adapters

23.Example: Specific SSL Version

24.Blocking Or Non-Blocking?

25.Header Ordering

26.Timeouts

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-05-05 11:56:47  更:2022-05-05 12:00:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/29 11:16:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计