AttributeError:' list'对象没有属性' strip'更新维基百科模块后

时间:2017-02-08 14:40:05

标签: python wikipedia

解决问题后:"Wikipedia module python: jumping “wikipedia.exceptions.PageError”"

使用此代码:

import csv
import wikipedia

wikipedia.set_lang('it')

with open('D:\\GIS\\Dati\\Vinca\\specie_vinca.csv', 'rt', encoding="utf8") as f:
    reader = csv.reader(f)
    for row in reader:
        try:
            wikipage = wikipedia.page(row)
            print (wikipage.title)
            print (wikipage.summary)
            print ("Page URL: %s" % wikipage.url)
            print ("Nr. of images on page: %d" % len(wikipage.images))
            print (" - Main Image: %s" % wikipage.images[0])
            print ("")
        except wikipedia.exceptions.PageError:
        #if a "PageError" was raised, ignore it and continue to next link
            continue

我已经将维基百科模块更新为1.4.5 for python 3.6。 现在代码不适用于:" AttributeError:' list'对象没有属性' strip'" 我不明白为什么在它工作之前,现在没有。 我该如何解决?

CVS文件包含物种名称:

...
Acmaeops septentrionis
Aconitum anthora
Aconitum lamarckii
Aconitum lycoctonum
Aconitum napellus
Aconitum paniculatum
Aconitum vulparia
Acorus calamus
Acrida ungarica
Acritus minutus
Acritus nigricornis
...

1 个答案:

答案 0 :(得分:1)

如果您使用的是csv阅读器,row 是一个元素列表。实际上,每列都有一个元素。现在您将整个列表传递给wikipedia.page(..)方法?

您可以通过例如提取行的第一个元素并获取该页面来解决它:

wikipage = wikipedia.page(row[0])

因此,您使用[0] 获取该行的第一列