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")