Python 2.7安装setuptools时的UnicodeDecodeError解决办法

我猜~~~很多一开始学习python的同学们一定也遇到了这个问题,在安装setuptools时候会遇到UnicodeDecodeError的错误。

我学的是3.x,但是周围的人都说2.7好,╮(╯▽╰)╭一开始我也不在乎,但是工作需要使用mongodb,但是它的包暂时只有2.7,我点点点点。

无奈我也就换了版本,改为2.7,但是问题来了,当我想安装setuptools的时候,恶心的错误来了。真的不知道安装这种成熟的工具还有这种问题。

在经过各种谷哥、度娘之后,有的说在代码中制定编码,试了不行,有的说是2.7自身的bug,根据其修改,发现好了。

先分享出来,我的修改方法。


1.下载获得setuptools 的py文件,执行后出现报错内容如下:

UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xd7 in position 9: ordinal not in range(128)

2.在python的安装目录下,一般是c:\python2.7\Lib\mimetypes.py

这是在search到的一个解决方案的地址:http://bugs.python.org/review/9291/diff/1663/Lib/mimetypes.py

根据该内容来修改mimetypes.py文件,并保存

现在把不同的地方贴出来:

修改一

原文件:

1  import sys
2 import posixpath
3 import urllib
4 try:
5 import _winreg
6 except ImportError

需要改为:


1  import sys
2 import posixpath
3 import urllib
4 from itertools import count
5 try:
6 import _winreg
7 except ImportError

修改二

原文件:


def enum_types(mimedb):
i = 0
while True:
try:
ctype = _winreg.EnumKey(mimedb, i)
except EnvironmentError:
break
try:
ctype = ctype.encode(default_encoding) # omit in 3.x!
except UnicodeEncodeError:
pass
else:
yield ctype
i += 1

需要修改为:

def enum_types(minmedb):
for i in count():
try:
pield_winreg.EnumKey(minedb,i)
except EnvironmentError:
break

3.删除mimetypes.pyc,这个应该是备份的源文件,发现没有删除这个文件的还是不行

4.在cmd重新再执行安装的命令,试试

应该可以了

参考的博客,在此,也是在问题解决之后看到的这个,早看到就好了,有改好的文件可以下载哦!

1.http://www.aax9.com/2014/01/21/95.html

还有一个,maybe也可以

2.http://blog.csdn.net/hugleecool/article/details/17996993

Python 2.7安装setuptools时的UnicodeDecodeError解决办法,布布扣,bubuko.com

时间: 2024-12-24 03:48:06

Python 2.7安装setuptools时的UnicodeDecodeError解决办法的相关文章

Python之pip安装、注意事项及解决办法

Pip 是对easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安装的包也同样可以使用pip进行安装 使用Python时需要安装pip但是在安装的过程中会出现很多的错误,但是这些都是使用终端命令来进行操作的,所以下面列出本人在安装过程中出现的问题及解决办法,有不足之处希望各位多提出,在此谢过哦! 下面开始安装: 1.在终端输入命令: easy_install pip 当出现错误1时,在终端输入(使用管理员执行): sudo ea

【安装Python环境】之“安装 setuptools ”时出现的问题以及解决办法

安装Python环境时,还需要安装"setuptools 与 pip",但是安装setuptools时出现了几个问题,如下: setuptools 与 pip 下载地址如下:https://pypi.Python.org/pypi/setuptoolshttps://pypi.Python.org/pypi/pip 解压后安装. 安装setuptools,在cmd命令行执行:python setup.py install 但是报错,如下图: Traceback (most recent

python安装markupsafe模块时卡死的解决办法

起因: 升级OS X从10.8到10.9,会发现在安装python的markupsafe模块时一直卡住. 当时的机器环境是: OSX 10.9, XCode 4.6.2, Python 2.7.6, Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn) 界面一直停留在下面的情况 mbp:MarkupSafe-0.23 $ python setup.py install running install running bdis

PHP编译安装时常见错误解决办法,php编译常见错误

PHP编译安装时常见错误解决办法,php编译常见错误 1.configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution 解决方法: yum -y install libxslt-devel 2.configure: error: Could not find net-snmp-config binary. Please check your net-snmp installa

PYTHON -MYSQLDB安装遇到的问题和解决办法

目前下载的mysqldb在window下没有exe安装包了,只有源码. 使用python setup.py install 命令安装, 报错如下: 异常信息如下: F:\devtools\MySQL-python-1.2.3>pythonsetup.py build Traceback (most recent call last): File "setup.py", line 15, in <module> metadata, options = get_confi

linux编译安装时常见错误解决办法

linux编译安装时常见错误解决办法 This article is post on https://coderwall.com/p/ggmpfa 原文链接:http://www.bkjia.com/PHPjc/1008013.html configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution复制代码 代码如下:yum -y install libxslt-devel c

Nodejs npm安装socket.io报错解决办法

安装socket.io时,报错,提示需要安装Microsoft visual studio 2005 或 Net framework 2.0 sdk,没有找到vcbuild.exe,解决办法是安装 .NET Framework 2.0 Software Development Kit (SDK) http://www.microsoft.com/en-us/download/details.aspx?id=15354 并将 C:\Program Files\Microsoft Visual St

Linux 使用yum install安装mysql登陆不上解决办法

CentOS yum安装mysql后 Can’t connect to local MySQL server through socket ‘/var/lib/ CentOS Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ 如果仅仅只yum 安装了mysql这个包,启动mysql时就会提示:ERROR 2002 (HY000): Can’t connect to local MySQL

dl380G8安装windows 2008R2 报错解决办法。

dl380安装windows2008R2时报错,安装包是我一直在用的安装包.我用光盘.优盘还是ILO安装都是报同样的错误.详细错误如下: 1.在复制完系统后重启安装时报下面的错误.我点击确定后系统会重启. windows cannot read the <productkey>setting from the unattend answer file 2.重启后报下面的错误,然后是不停的重启. 原因:是因为HP Intelligent Provisioning版本1.6都存在这个问题. 解决办