在发送请求之前,我使用prepare()from request来准备url。但函数返回的值不正确。正如您可以看到的,对于参数codif=i,我发送了一个值列表,结果必须是codif=7110,但请求返回我这个codif%3d=7%2c110,实际上不起作用。
你有办法解决这个问题吗?
from requests import Request
dict_data = {
'note':['716'],
'codif':[7, 110]}
request_parameters = {
'note=' : dict_data['note'],
'codif=' : ','.join([str(i) for i in dict_data['codif']]),
}
p = Request('GET', "https://test.intranert.com/api/light?", params=request_parameters).prepare()
p.url
输出:'https://test.intranert.com/api/light?note%3d=716&codif%3d=7%2c110'
期望:'https://test.intranert.com/api/light?note=716&codif=7,110'
非常感谢。
1条答案
按热度按时间62lalag41#
这是因为浏览器通过ascii表键码中的十六进制表示对url输入进行编码。看看这个:正如你所看到的,逗号的十六进制是2c,所以它很好。