User-Agent包含中文的解决办法
环境:
python 3.6.2
windows7
问题:
在抓包分析某app前,分析到请求头中user-agent带有中文的app名称。
User-Agent=app中文名 1.4.1 rv:1.4.1.0 (iPad; iOS 12.1.1; zh_CN)
于是我就将此UA强行加到headers中
headers = {
"Accept": "application/json",
'User-Agent': '我是中文应用名 1.4.1 rv:1.4.1.0 (iPad; iOS 12.1.1; zh_CN)',
'Accept-Encoding': 'gzip'
}
requests.get(url, headers=headers)
报如下错误:
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-4: ordinal not in range(256)
解决办法:
将上述代码中的UA值encode()
'User-Agent': '我是中文应用名 1.4.1 rv:1.4.1.0 (iPad; iOS 12.1.1; zh_CN)'.encode("unicode_escape")