2017-01-18 5 views
2

Есть ли способ использовать MediaWiki API или любой другой инструмент для автоматического получения предыдущей версии статьи в Википедии, используя приблизительную дату (не зная значения «oldid»)?Как получить историческую версию статьи Википедии по данной дате?

Например, как я могу извлечь history version of Stack Overflow статью от 20 декабря 2016 года с использованием «декабря 2016 года», «20 декабря 2016» или дата вокруг этого дня в качестве параметра?

ответ

4

Вы можете сделать это с помощью MediaWiki API с действием запроса и свойство изменений. Для того, чтобы получить первый пересмотр Stack Overflow сделанное после 00:00:00 20 декабря 2016 года Вы можете использовать это:

https://en.wikipedia.org/w/api.php?action=query&prop=revisions&titles=Stack%20Overflow&rvlimit=1&rvprop=content&rvdir=newer&rvstart=2016-12-20T00:00:00Z 

где rvlimit это число версий истории должны быть возвращены, rvdir = новее означает, что результаты (если rvlimit> 1) перечислены в порядке от старейшего до новейшего, и rvstart - это время, в течение которого выполняются версии истории страниц.

0

завиток запрос на Special:Export странице может также помочь, установив параметр смещения на что-то вроде «2016-12-20T00: 00: 00Z»

curl -d "" 'https://en.wikipedia.org/w/index.php?title=Special:Export&pages=Stack_Overflow&offset=2016-12-20T00:00:00Z&limit=1&action=submit' 
Смежные вопросы