2010-07-26 6 views
1

Je voudrais un moyen de télécharger le contenu de chaque page dans l'histoire d'un article populaire sur Wikipedia. En d'autres termes, je veux obtenir le contenu complet de chaque édition pour un seul article. Comment ferais-je cela?Comment puis-je obtenir l'historique complet des modifications pour un article sur Wikipedia?

Existe-t-il un moyen simple de le faire en utilisant l'API Wikipedia. J'ai regardé et n'ai rien trouvé qui soit apparu comme une solution simple. J'ai aussi regardé les scripts sur la page Bot de PyWikipedia (http://botwiki.sno.cc/w/index.php?title=Template:Script&oldid=3813) et n'ai rien trouvé d'utile. Un moyen simple de le faire en Python ou Java serait le meilleur, mais je suis ouvert à toute solution simple qui me procurera les données.

Répondre

2

Il existe plusieurs options pour cela. Vous pouvez utiliser la page spéciale Special:Export pour récupérer un flux XML de l'historique des pages. Ou vous pouvez utiliser l'API, trouvé sous /w/api.php. Utilisez action=query&title=$TITLE&prop=revisions&rvprop=timestamp|user|content etc. pour aller chercher l'historique. Pywikipedia fournit une interface à cela, mais je ne sais pas par cœur comment l'appeler. Une bibliothèque alternative pour Python, mwclient, fournit également cela, via site.pages[page_title].revisions()

+0

Parfait! C'est exactement ce que je cherchais. – Robbie

0

Eh bien, une solution consiste à analyser le vidage XML Wikipedia.

Je pensais juste que je mettrais ça là-bas.

Si vous obtenez seulement une page, c'est exagéré. Mais si vous n'avez pas besoin des toutes dernières informations, l'utilisation du XML aurait l'avantage d'être un téléchargement ponctuel au lieu de hits réseau répétés.

Questions connexes