在Anaconda上安装SenticNet软件包会产生UnicodeDecodeError

时间:2015-06-12 05:49:44

标签: python anaconda

当我尝试使用Conda安装SenticNet进行情绪分析时,它无法找到它。然后我尝试了pip install,我收到了错误:

Collecting senticnet   Using cached senticnet-0.3.3.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "C:\Users\A00220~1\AppData\Local\Temp\pip-build-ez4td4hb\senticnet\setup.py", line 20, in <module>
        license=open('LICENSE').read(),
      File "C:\Anaconda3\lib\encodings\cp1252.py", line 23, in decode
        return codecs.charmap_decode(input,self.errors,decoding_table)[0]
    UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position
181: character maps to <undefined>

我有Anaconda 64位,python 3.4.3和pip 7.0.3

2 个答案:

答案 0 :(得分:0)

这是因为Python在阅读时没有将文件打开为UTF-8。看起来Windows默认情况下不使用Unicode,因此您必须将encoding='utf-8'传递给打开的调用。查看错误代码,您需要将setup.py中的第20行更改为

license=open('LICENSE', encoding='utf-8').read()

有关详细信息,请特别检查Python's Unicode HOWTO数据的读取和写入。

答案 1 :(得分:0)

从以下位置克隆github存储库:

https://github.com/yurimalheiros/senticnetapi

解压缩文件后,打开setup.py并将第20行替换为:

license = open('LICENSE',encoding ='utf-8')。read()

此后,请在此处打开命令提示符(确保已为python设置了环境变量)

运行命令->'python setup.py install'

这将为python安装sendicnet,现在要使其在Anaconda中运行,请复制以下文件夹:

C:\ Users \ HP \ AppData \ Local \ Programs \ Python \ Python36-32 \ Lib \ site-packages \ senticnet-1.3-py3.6.egg \ senticnet

收件人:

C:\ Users \ HP \ Anaconda4 \ Lib \ site-packages \ senticnet (根据您的配置,路径会有所不同)