Wikipedia API for python

匿名 (未验证) 提交于 2019-12-03 01:38:01

问题:

I am trying to see the table of contents in a wikipedia page using Wikipedia API for python. Here is my code.

>>> import wikipedia >>> ny = wikipedia.page("New York") >>> ny.sections 

But I am getting an empty list [] as the result. When I go to the page and check, I can see that there is content in the table of contents. All the other things said in the documentation seem to work except this. I am new to python coming from a java background.

回答1:

There is a bug in the current version of the Wikipedia API python library. You can install a branch by lucasdnd on github that fixed this:

pip install git+https://github.com/lucasdnd/Wikipedia.git 

(You can --upgrade if you already have it installed)

Now:

>>> import wikipedia >>> ny = wikipedia.page("New York") >>> ny.sections [u'History', u'16th century', u'17th century', u'18th century, the American Revolution, and statehood', u'19th century', u'Immigration', u'September 11, 2001 attacks', u'Hurricane Sandy, 2012', u'Geography', u'Climate', u'Statescape', u'Regions', u'Adjacent geographic entities', u'State parks', u'National parks', u'Administrative divisions', u'Demographics', u'Population', u'Most populous counties', u'Major cities', u'Metropolitan areas', u'Racial and ancestral makeup', u'Languages', u'Religion', u'LGBT', u'Economy', u'Wall Street', u'Silicon Alley', u'Microelectronic hardware and photographic processing', u'Media and entertainment', u'Tourism', u'Exports', u'Education', u'Transportation', u'Government and politics', u'Government', u'Capital punishment', u'Federal representation', u'Politics', u'Sports', u'See also', u'References', u'Further reading', u'External links']  

It'll hopefully be fixed in the main library sometime soon.



回答2:

I was facing the same issue. And since it's almost 3 years and it doesn't look, that it will get fixed, I have created another simple library - Wikipedia-API.

import wikipediaapi  wiki = wikipediaapi.Wikipedia('en') mutcd = wiki.page('Comparison of MUTCD-Influenced Traffic Signs') print("\n".join([s.title for s in mutcd.sections])) 

Output:

Places Media and entertainment Sports Ships Other uses See also 


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!