【发布时间】:2015-04-19 14:58:05
【问题描述】:
我对 Python 还很陌生,所以我希望这是一些我只是想念的简单的东西。
我在 Windows 7 上运行 Python 2.7
我正在尝试通过命令行运行一个基本的 twitter 抓取程序。但是我不断收到以下错误:
File "C:\Python27\lib\encodings\cp437.py", line 12, in encode
return codecs.charmap_encode(input,errors,encoding_map)
UnicodeEncodeError: 'charmap' codec can't encode character u'\u2019' in position 79: character maps to (undefined)
我基本上明白这里发生了什么,它试图在 cp437 中打印到控制台,并且它被它抓取的推文中的 unicode 字符弄糊涂了。
我要做的就是让它用“?”替换这些字符。或者只是让它完全删除这些字符。我已经阅读了很多关于此的帖子,但我不知道该怎么做。
我打开了错误中引用的 cp437.py 文件,并将所有 errors='strict' 更改为 errors='ignore',但这并没有解决问题。
然后我尝试进入 C:\Python27\Lib\codecs.py 文件并将所有errors='strict' 更改为errors='ignore',但这也没有解决问题。
有什么想法吗?就像我说的,希望我只是缺少一些基本的东西,但我已经阅读了很多关于这方面的帖子,但我似乎无法理解它。
非常感谢。 赛斯
【问题讨论】:
-
您不能只是“忽略”错误以使它们消失。更改内置库可能不是一个好主意。
-
你应该修复你的代码。没有更多信息,我无法更具体。
标签: python python-2.7 unicode stdout