Python3 requests中headers包含中文参数的解决方案
本文介绍在Python3中使用requests库时,若headers参数需包含中文如何解决。通过urllib.parse.quote()对中文进行编码,确保请求正常发送。
Python3 requests headers中文参数处理方案
当使用Python3的requests库发送HTTP请求时,若需要在headers参数中拼接包含中文的内容,直接传递可能会导致编码问题。为了解决这一需求,需要对中文参数进行适当的处理。
url = 'https://....search?keyword=' + param + '&templateId=&page=1&pageSize=10'
headers = {
"Accept": "application/json, text/javascript, */*; q=0.01",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "zh-CN,zh;q=0.9",
"Connection": "keep-alive",
"Cookie": "Hm_lvt_0076fef7e919d8d7b24383dc8f1c852a=1522398473; Hm_lpvt_0076fef7e919d8d7b24383dc8f1c852a=1522398482",
"Referer": "https://...../index.html?index=0&keyword=" + urllib.parse.quote(param),
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36",
"X-Requested-With": "XMLHttpRequest"
}
rsp = requests.get(url, headers=header
from urllib import parse
str1 = 'haha哈哈'
str2 = parse.quote(str1) #quote()将字符串进行编码
print(str2) #str2=haha%E5%93%88%E5%93%88
str3 = parse.unquote(str2) #解码字符串
print(str3) #str3=haha哈哈
上述方法提供了一种在Python3中处理requests headers中文参数的有效方案。希望此内容能对大家有所帮助,也欢迎继续支持本站获取更多技术分享。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













