2014-06-29 29 views
15

Mi piacerebbe ottenere un elenco di tutti i titoli di tutti gli articoli di Wikipedia. So che ci sono due modi possibili per ottenere contenuti da una wiki di Wikimedia. Uno sarebbe l'API e l'altro sarebbe un dump del database.Come ottenere un elenco di titoli di tutti gli articoli di Wikipedia

Preferirei non scaricare il dump della wiki. innanzitutto perché è enorme, in secondo luogo perché non ho molta esperienza con l'interrogazione dei database. D'altro canto, il problema con l'API è che non riuscivo a trovare un modo per recuperare solo un elenco dei titoli degli articoli e anche se avrebbe avuto bisogno di> 4 milioni di richieste che probabilmente mi avrebbero comunque bloccato da ulteriori richieste. Quindi la mia domanda è 1. se esiste un modo per ottenere solo i titoli degli articoli di wikipedia tramite l'API e 2. se esiste un modo per combinare più richieste/query in una sola. O devo effettivamente scaricare un dump di Wikipedia?

+0

Si potrebbe provare la [API Sandbox] (http://en.wikipedia.org/wiki/Special%3aApiSandbox#action=query&prop=extracts&format=json&exintro=&titles=Stack%20Overflow) o una [query] effettiva (http : //en.wikipedia.org/w/api.php? action = query & list = allpages & format = json) – chridam

risposta

30

The allpages API module consente di fare proprio questo. Il suo limite (quando si imposta aplimit=max) è 500, quindi per interrogare tutti gli articoli 4.5M, occorrono circa 9000 richieste.

Ma uno scarico è una scelta migliore, perché ci sono molti diversi dump, tra cui all-titles-in-ns0 che, come suggerisce il nome, contiene esattamente ciò che si desidera (59 MB di testo gzip).

+1

Fantastico, grazie mille! Stavo cercando esattamente una tale discarica, ma non sono riuscito a trovarne una. Immagino che un clic in più nella ricerca di una discarica mi avrebbe portato esattamente a questo download :) grazie! – Flavio

+0

Questo ci ha aiutato. Puoi dare un link di pagina che ha un elenco di tutte le discariche? –

+0

@VivekSancheti [Questa è la pagina che elenca tutti i dump di Wikipedia in inglese del mese scorso.] (Https://dumps.wikimedia.org/enwiki/20161020/) – svick