2014-01-08 81 views
5

當我嘗試使用pip-3.3安裝Pillow時,我得到了一個錯誤,請參閱下面的回溯。由於UnicodeDecodeError無法安裝PIL

File "/home/samsun/workspace/python/chat_environment/lib/python3.3/site-packages/pip/req.py", line 297, in egg_info_data 
    data = fp.read() 
    File "/home/samsun/workspace/python/chat_environment/lib/python3.3/encodings/ascii.py", line 26, in decode 
    return codecs.ascii_decode(input, self.errors)[0] 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 14439: ordinal not in range(128) 

我認爲回溯告訴我該文件中的某些字符都是Unicode,但是Python使用ASCII來讀取文件。

我想改變python3.3 filesystemencoding來解決這個錯誤;有沒有辦法改變默認的文件系統編碼?

+0

是什麼讓你認爲改變默認的文件系統編碼可以解決你的問題?無論如何,通常默認是**而不是** ASCII。你給了什麼命令?什麼是完整的回溯? –

+0

我改變了我的問題。請幫我解決這個問題。非常感謝 –

+0

你到底做了什麼?什麼是命令行,並且您是否使用了requirements.txt文件? –

回答

7

我剛剛遇到了這個問題。我不確定這是一個點子問題還是一個枕頭問題,但是「罪魁禍首」似乎是枕頭作者之一的名字,其中包含非ascii字符(HåkanKarlsson)。顯然,一個EGG信息文件是由Pillow中的CHANGES.rst文件構建的,並且pip試圖用ascii解析,失敗了。改變作者的名字似乎是一個壞主意,所以pip應該處理得更好。

事實上,pip install --upgrade pip爲我工作(從點1.4升級到1.5)。看來this change修正了這一點。

+0

或者我們可以使用「easy_install -U git + https://github.com/pypa/pip#egg=pip」 –

相關問題