今天在解析requests的响应内容时遇到了一个编码问题:
UnicodeEncodeError: ‘latin-1’ codec can’t encode characters in position 0-1: ordinal not in range(256)
查了很久调用requests()时的编码仍然没有效果,最后发现是因为系统的语言环境不支持UTF-8,,这是我出错时的语言环境:
$ locale
LANG=en_US
LC_CTYPE=”en_US”
LC_NUMERIC=”en_US”
LC_TIME=”en_US”
LC_COLLATE=”en_US”
LC_MONETARY=”en_US”
LC_MESSAGES=”en_US”
LC_PAPER=”en_US”
LC_NAME=”en_US”
LC_ADDRESS=”en_US”
LC_TELEPHONE=”en_US”
LC_MEASUREMENT=”en_US”
LC_IDENTIFICATION=”en_US”
LC_ALL=
执行export LANG=en_US.UTF-8改为下面这样就正常了
$ locale
LANG=en_US.UTF-8
LC_CTYPE=”en_US.UTF-8”
LC_NUMERIC=”en_US.UTF-8”
LC_TIME=”en_US.UTF-8”
LC_COLLATE=”en_US.UTF-8”
LC_MONETARY=”en_US.UTF-8”
LC_MESSAGES=”en_US.UTF-8”
LC_PAPER=”en_US.UTF-8”
LC_NAME=”en_US.UTF-8”
LC_ADDRESS=”en_US.UTF-8”
LC_TELEPHONE=”en_US.UTF-8”
LC_MEASUREMENT=”en_US.UTF-8”
LC_IDENTIFICATION=”en_US.UTF-8”
LC_ALL=
以此记录
---------------------
作者:wonter10
来源:CSDN
原文:https://blog.csdn.net/wonter10/article/details/77855942
版权声明:本文为博主原创文章,转载请附上博文链接!