2016-01-19 15 views
8

Sto cercando di vedere il sommario in una pagina di Wikipedia usando l'API di Wikipedia per python. Ecco il mio codice.API di Wikipedia per python

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

Ma sto ottenendo una lista vuota [] come risultato. Quando vado alla pagina e controllo, posso vedere che c'è del contenuto nel sommario. Tutte le altre cose dette nella documentazione sembrano funzionare eccetto questo. Sono nuovo di Python proveniente da uno sfondo java.

+1

E 'strano, ma sembra che 'sections' non funziona mai correttamente. Restituisce sempre la lista vuota. – PatNowak

+0

@PatNowak come hai verificato che restituisca sempre una lista vuota? – mahacoder

+0

Ho controllato un gruppo di siti. – PatNowak

risposta

9

C'è un bug nella versione corrente della libreria python dell'API di Wikipedia. È possibile installare un ramo da lucasdnd on github che risolto questo:

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

(Potete --upgrade se hai già installato)

Ora:

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

Sarà spera, essere fixed in the main library volte presto .

2

Mi trovavo di fronte allo stesso problema. E poiché sono quasi 3 anni e non sembra, che verrà risolto, ho creato un'altra libreria semplice - 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])) 

uscita:

Places 
Media and entertainment 
Sports 
Ships 
Other uses 
See also 
Problemi correlati