默认情况下,Python 的 Requests 库会自动对 URL 进行编码,以防止出现特殊字符导致的错误。如果需要取消自动 URL 编码,可以通过设置 'params' 参数来实现。

例如,假设我们要发送一个 GET 请求,请求的 URL 为 'http://example.com/search?q=hello world',其中包含一个空格字符,如果不取消自动 URL 编码,Requests 会将空格字符编码为 '%20',导致请求失败。可以通过如下方式取消自动 URL 编码:

import requests

url = 'http://example.com/search'
params = {'q': 'hello world'}
response = requests.get(url, params=params, encode_uri=False)

其中,'params' 参数指定传递给请求的查询参数,'encode_uri' 参数设置为 'False' 表示取消自动 URL 编码。这样,请求就会发送到 'http://example.com/search?q=hello world',不会进行编码。

Python Requests 取消自动 URL 编码:如何避免 URL 编码

原文地址: https://www.cveoy.top/t/topic/lUUD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录