Как я могу получить полную историю изменений для статьи в Википедии? - PullRequest
1 голос
/ 26 июля 2010

Я бы хотел, чтобы скачать содержимое каждой страницы в истории популярной статьи в Википедии. Другими словами, я хочу получить полное содержание каждого редактирования для отдельной статьи. Как бы я поступил так?

Есть ли простой способ сделать это с помощью API Википедии. Я посмотрел и не нашел ничего выложенного в качестве простого решения. Я также изучил скрипты на странице бота PyWikipedia (http://botwiki.sno.cc/w/index.php?title=Template:Script&oldid=3813)) и не нашел ничего полезного. Какой-то простой способ сделать это на Python или Java был бы лучшим, но я открыт к любому простому решению, которое получит мне данные.

Ответы [ 2 ]

2 голосов
/ 26 июля 2010

Есть несколько вариантов для этого. Вы можете использовать специальную страницу Special: Export для извлечения XML-потока истории страниц. Или вы можете использовать API, найденный в / w / api.php . Используйте action=query&title=$TITLE&prop=revisions&rvprop=timestamp|user|content и т. Д., Чтобы получить историю. Pywikipedia предоставляет интерфейс для этого, но я не знаю наизусть, как это назвать. Альтернативная библиотека для Python, mwclient , также предоставляет это через site.pages[page_title].revisions()

0 голосов
/ 26 июля 2010

Что ж, одно из решений - это проанализировать дамп Wikipedia XML.

Просто подумал, что я это опубликую.

Если вы получаете только один страница, это излишне.Но если вам не нужна самая свежая информация, то преимуществом использования XML будет возможность однократной загрузки вместо повторных сетевых обращений.

...