Requests模块怎么设置字符编码

2023-10-11 18:53:22 浏览数 (2)

Requests模块在发出网络请求时,支持设置字符编码,主要有以下两种方式:

  1. 在请求头中设置字符编码

可以通过headers参数设置字符编码,例如:

代码语言:javascript复制
import requests

url = 'http://www.example.com'

headers = {'user-agent': 'my-app/0.0.1','Accept-Encoding': 'utf-8'}

resp = requests.get(url, headers=headers)

这里我们在headers中加入'Accept-Encoding': 'utf-8',就可以设置发送请求的编码为utf-8。

  1. 通过参数encoding设置

Requests模块的get(), post()等方法都有一个encoding参数,可以用来设置字符编码,例如:

代码语言:javascript复制
resp = requests.get(url, encoding='utf-8')
resp = requests.post(url, data=data, encoding='utf-8') 

如果设置了encoding,Requests会使用此编码发送请求,同时也会使用该编码来解码响应的内容。

综上,Requests设置字符编码的主要方法是通过headers的Accept-Encoding和encoding参数来设置。默认编码为utf-8。

0 人点赞