Я хочу скрафтить всю вики, которая использует программное обеспечение MediaWiki. Количество страниц довольно небольшое, но у них много ревизий, и я бы хотел, чтобы ревизии тоже были скрафтены.
Вики не предлагает дампы баз данных, в отличие от Википедии. Существуют ли какие-либо существующие программы/скрипты, предназначенные для скрапинга сайтов MediaWiki?
решение1
Если владелец вики не отключил эту возможность, вы можете экспортировать страницы с их историей черезСпециальный:ЭкспортЭто даст вам XML-дамп, аналогичный дампам базы данных Википедии, который вы затем сможете импортировать в другую вики.
Другой способ получить историю страниц из MediaWiki в формате XML — использоватьAPI-запрос prop=revisions. Однако формат результатов API несколько отличается от формата, создаваемого Special:Export, поэтому вам, вероятно, придется немного обработать вывод, прежде чем вы сможете передать его стандартным скриптам импорта.
решение2
Ознакомьтесь с инструментами, доступными на WikiTeam.http://archiveteam.org/index.php?title=WikiTeam
Лично я использую dumpgenerator.py от wikiteam, который доступен здесь:https://github.com/WikiTeam/wikiteam
Это зависит от Python 2. Вы можете получить программное обеспечение с помощью git или загрузить zip-архив с github:
git clone https://github.com/WikiTeam/wikiteam.git
Основное использование:
python dumpgenerator.py http://wiki.domain.org --xml --images