Python requests库的使用

介绍:Requests is an elegant and simple HTTP library for Python, built for human beings.

官网文档:快速入门 — 请求 2.31.0 文档 (requests.readthedocs.io)

一、reqeusts的安装

pip install requests

二、基本用法

import requests

# get 请求
resp = requests.get("https://www.example.com/get")

# get 带 url 参数
payload = {'key1': 'value1', 'key2': 'value2'}
resp = requests.get('https://www.example.com/get', params=payload)

# post 请求
resp = requests.post('https://www.example.com/post', data={'key': 'value'})

# 通过 encoding 设置响应内容的编码
resp.encoding("utf-8")

# 响应状态码 status_code
print(resp.status_code)
# 响应内容 text
print(resp.text)
# 内置json解码器
print(resp.json())

# 对于非文本请求,您还可以以字节形式访问响应正文
from PIL import Image
from io import BytesIO

image = Image.open(BytesIO(resp.content))

 
# 请求状态码对比 requests.codes 中包含了大部分的请求状态码
r.status_code == requests.codes.ok

 四、重定向、超时

# 禁用重定向
resp = requests.get("https://www.example.com/", allow_redirects=False)

# 连接超时:2秒,读超时:2秒。最大超时时间:4秒。
resp = requests.get("https://www.example.com/", timeout=2)

# 连接超时:2秒,读超时:3秒。最大超时时间:5秒。
resp = requests.get("https://www.example.com/", timeout=(2, 3))

# 其他请求方式同理

五、使用会话 Session

session = requests.Session()

session.get('https://www.example.com/login')

resp = session.get('https://www.example.com/index')

print(resp.text)

# 手动设置 cookie 两种方式
session.cookies = { ... }

r = session.get('https://www.example.com/index', cookies={'session': '---session---'})

# 获取cookies
print(session.cookies)

六、证书

详见官方文档

七、代理

resp = requests.get("https://www.example.com/", proxies={"https": "https://xxx.xxx.xxx.xxx:xxx"})

八、简单示例

# request(method, url, **kwargs)

url = 'https://xxx.com'
args = {
    'proxies': {},
    'timeout': (2, 3)
}

resp = request('get', url, args)

其他详见官方文档

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值