2016-01-19 114 views
8

我正在嘗試在維基百科頁面中使用Wikipedia API for python查看目錄。這是我的代碼。Python的Wikipedia API

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

但是,我得到一個空列表[]作爲結果。當我進入頁面並檢查時,我可以看到目錄中有內容。在文檔中說的所有其他東西似乎都起作用,除此之外。我是來自java背景的python的新手。

+1

這很奇怪,但它看起來像'sections'從來沒有正常工作。它總是返回空列表。 – PatNowak

+0

@PatNowak你是如何驗證它總是返回一個空列表? – mahacoder

+0

我查了一堆網站。 – PatNowak

回答

9

當前版本的Wikipedia API python庫存在一個錯誤。您可以通過lucasdnd on github是固定安裝這一個分支:

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

(您可以--upgrade,如果你已經安裝了)

現在:

>>> 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'] 

這將有望成爲fixed in the main library不久的某個時候。

2

我正面臨同樣的問題。而且由於它已經將近3年了,它看起來不會看到它會被修復,所以我創建了另一個簡單的庫 - 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])) 

輸出:

Places 
Media and entertainment 
Sports 
Ships 
Other uses 
See also