Python3.6和婉转的问题

时间:2017-06-14 09:19:45

标签: python python-3.x

我正在尝试在python中运行Wanish库并获得以下内容而不是预期的结果。

>>> from wanish import Wanish
>>> wanish = Wanish()
>>> wanish.perform_url("http://www.bbc.com/news/uk-england-london-40269625")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python36\lib\site-packages\wanish-0.6.3-py3.6.egg\wanish\__init__.py", line 167, in perform_url
  File "C:\Python36\lib\site-packages\wanish-0.6.3-py3.6.egg\wanish\summarizer.py", line 55, in get_plain_text
  File "C:\Python36\lib\site-packages\wanish-0.6.3-py3.6.egg\wanish\summarizer.py", line 91, in create_referat
  File "C:\Python36\lib\site-packages\wanish-0.6.3-py3.6.egg\wanish\summarizer.py", line 68, in textrank
  File "C:\Python36\lib\site-packages\wanish-0.6.3-py3.6.egg\wanish\langid.py", line 175, in classify
  File "C:\Python36\lib\site-packages\wanish-0.6.3-py3.6.egg\wanish\langid.py", line 148, in instance2fv
TypeError: 'float' object cannot be interpreted as an integer

我已经尝试使用Python 3.6甚至使用python 2.7

我遇到了同样的问题。

2 个答案:

答案 0 :(得分:0)

实际上,如果您访问pypi wanish page,您会看到它仅位于Python 3.x类别中:

  

编程语言:: Python

     

编程语言:: Python :: 3.3

     

编程语言:: Python :: 3.4

     

编程语言:: Python :: 3.5

它在Python 2中不起作用,因为在代码中有from urllib.parse import urlparse, urljoin行。但是来自docs:

  

{3}中的urlparse模块重命名为urllib.parse

答案 1 :(得分:0)

违规行是LanguageIdentifier.instance2fv()中的* *:

arr = np.zeros((self.nb_numfeats,), dtype='uint32')

LanguageIdentifier.from_modelstring()中,用于实例化此类的工厂方法,您可以找到:

nb_numfeats = len(nb_ptc) / len(nb_pc)

在python3中,使用/运算符的除法总是返回一个浮点数,其中在python2中,如果两个运算符都是整数,则返回一个int。所以这是一个错误。

langid.py文件似乎实际上来自另一个项目,此错误was fixed a while ago

*我通常会直接链接到代码,但有人决定在源文件中删除~2.4MB的base64 blob,因此github不允许链接。