天天看點

User-Agent包含中文漢字之UnicodeEncodeError的解決辦法User-Agent包含中文的解決辦法

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