UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xb0 in position 1: ordinal not in range(128)

UnicodeDecodeError: 'ascii' codec can't decode byte 0xb0 in position 1: ordinal not in range(128) 原因可能与注册表错误的字符集有关,可能与某些软件对注册表的改写的gbk格式导致。

 

解决方法:打开C:\Python27\Lib下的 mimetypes.py 文件,

找到大概256行的 ‘default_encoding = sys.getdefaultencoding()’。

在这行前面添加三行:

if sys.getdefaultencoding() != 'gbk':  
    reload(sys)  
    sys.setdefaultencoding('gbk')  
default_encoding = sys.getdefaultencoding()