我有一个字符串,字符为ý。我在python中将其作为\ u00fd使用,甚至可以正确打印到控制台。但是,当我将此字符串传递给request.get时,它被更改为%C3%BD。如何使请求通过ý字符而不进行更改?
答案 0 :(得分:1)
你做不到。
请求是特殊格式的URL。 URL具有预定义的格式。以这种格式,除ASCII字母数字和.
,-
,_
,~
以外的所有字符都必须使用百分比编码。
不这样做将使Web的互操作性大大降低:ý只是为您提供的(好吧,现在UTF-8是Web的标准配置,但几年前并非如此,我们仍然有很多旧的网络工具)。
因此,您的ý应该始终使用百分比编码进行编码,并且requests
模块仅应用标准的网络规则。如果您希望不能互操作,则应该自己编写url。已完成请求以简化Web(HTTP协议)的所有详细信息。