类似问题:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start byte
解决:将 encoding=’utf-8’ 改为GB2312、gbk、ISO-8859-1,随便尝试一个均可以!
比如:temp = pd.read_csv('temp.csv', encoding='ISO-8859-1')
=======三个总有一个会成功解决问题=======
【encoding=’GB2312’】
【encoding=’gbk’】
【encoding=’ISO-8859-1’】
0、背景
为了安装个自动化测试框架,https://github.com/Tencent/FAutoTest,里面提到需要安装bidict,只有这个安装不成功,用python2.7.13,(python3是OK的)一直报错gbk编码错误,如下:
C:\Python27>pip install bidict
Collecting bidict
Using cached https://files.pythonhosted.org/packages/7c/8e/ceb568c1103b387e8c8a38e33acb6f8c4b6422d4d9dd6b37e5e2acd104fc/bidict-0.17.5.tar.gz
Installing build dependencies ... Error 'gbk' codec can't decode byte 0xd2 in position 0: incomplete multibyte sequence while executing command c:\python27\python.exe -m pip install --ignore-installed --no-user --prefix c:\users\壹心理\appdata\local\temp\pip-build-env-pktkri --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- setuptools wheel setuptools_scm
error
Exception:
Traceback (most recent call last):
File "c:\python27\lib\site-packages\pip\_internal\cli\base_command.py", line 148, in main
status = self.run(options, args)
File "c:\python27\lib\site-packages\pip\_internal\commands\install.py", line 318, in run
resolver.resolve(requirement_set)
File "c:\python27\lib\site-packages\pip\_internal\resolve.py", line 102, in resolve
self._resolve_one(requirement_set, req)
File "c:\python27\lib\site-packages\pip\_internal\resolve.py", line 256, in _resolve_one
abstract_dist = self._get_abstract_dist_for(req_to_install)
File "c:\python27\lib\site-packages\pip\_internal\resolve.py", line 209, in _get_abstract_dist_for
self.require_hashes
File "c:\python27\lib\site-packages\pip\_internal\operations\prepare.py", line 298, in prepare_linked_requirement
abstract_dist.prep_for_dist(finder, self.build_isolation)
File "c:\python27\lib\site-packages\pip\_internal\operations\prepare.py", line 109, in prep_for_dist
"Installing build dependencies"
File "c:\python27\lib\site-packages\pip\_internal\build_env.py", line 122, in install_requirements
call_subprocess(args, show_stdout=False, spinner=spinner)
File "c:\python27\lib\site-packages\pip\_internal\utils\misc.py", line 659, in call_subprocess
stdout=stdout, cwd=cwd, env=env,
File "c:\python27\lib\subprocess.py", line 390, in __init__
errread, errwrite)
File "c:\python27\lib\subprocess.py", line 595, in _execute_child
args = list2cmdline(args)
File "c:\python27\lib\subprocess.py", line 290, in list2cmdline
return ''.join(result)
UnicodeDecodeError: 'gbk' codec can't decode byte 0xd2 in position 0: incomplete multibyte sequence
1、安装过程过程,解决思路
1.1 在win10_64bit的dos上直接输入 pip install bidict,一直报错如上
1.2 想着之前下载的安装包,在本地的安装方法可能有误,下载到桌面(带中文的)路径下解压,输入下面的命令的后,还一直报错,头大
python setup.py build
python setup.py install
1.3 百度/谷歌搜索解决,找到下面2个文章,跟着操作还是不行
https://www.cnblogs.com/superxuezhazha/p/6605929.html
https://blog.csdn.net/xiaopangxia/article/details/48877741
2、最后,居然成功安装了!!!
连我自己也觉得奇怪,经过上面的折腾,
2.1在python目录 Python27\Lib\site-packages 建一个文件sitecustomize.py
内容写:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
2.2 去官网下载https://pypi.org/project/bidict/#files,到C盘,然后解压bidict-0.17.5,在没有中文路径下,重新操作,OK了
python setup.py build
python setup.py install
正确的信息,太不容易了!