Клиентские библиотеки содержат готовый код, который разработчики могут использовать в разработке ботов для решения различных задач. Благодаря библиотекам им не нужно писать код с нуля, когда их проекты взаимодействуют с API.
Эта страница содержит набор библиотек по языкам, для которых указано до трех рекомендуемых клиентских библиотек, которые можно использовать с MediaWiki Action API. Рекомендации основаны на оценках с использованием API:Client_code/Gold_standard.
Название | Описание |
BotWikiAwk | Фреймворк и библиотеки для создания ботов. Включает примеры ботов. |
Wikiget | Программа Awk CLI для взаимодействия с MediaWiki API для чтения / записи, включая OAuth. |
Имя | Описание |
libmediawiki | Библиотека, позволяющая легко редактировать вики через MediaWiki API. |
Имя | Описание |
cl-mediawiki | Оболочка Common Lisp для API MediaWiki. |
Имя | Описание |
go-mediawiki | Оболочка Go для MediaWiki API. |
go-mwclient | Оболочка для MediaWiki API (поддерживает maxlag, продолжения запросов, OAuth). |
Имя | Описание |
haskell mediawiki | Полная привязка Haskell к MediaWiki API, позволяющая программно получать доступ (читать и писать) к содержимому MediaWiki. |
Имя | Описание |
JavaWikiBotFramework | Библиотека для получения данных и поддержки вики-сайтов на основе MediaWiki, таких как Википедия. |
jwiki | Библиотека для простого взаимодействия с Wikipedia / MediaWiki. |
Bliki Engine | Может конвертировать викикод в HTML, DocBook или PDF. Имеет вспомогательную библиотеку для вызовов API. |
Дополнительные библиотеки Java доступны по адресу API:Client_code/All#Java.
Имя | Описание |
mwbot (Node.js) | MWBot использует шаблон Promise и другие методологии ES6, оптимизированные для создания ботов, которые вносят изменения. Работает с любым сайтом MediaWiki. |
nodemw (Node.js) | Стандартный клиент MediaWiki API для Node.js. |
mediawiki.api (браузер) | Универсальный клиент MediaWiki API для клиентского JavaScript. Он поставляется с ядром MediaWiki в виде пакета модуля ResourceLoader. Он абстрагирует некоторые высокоуровневые концепции и предоставляет общий клиент для других запросов. |
Вики-клиенты JavaScript:
Имя | Описание |
mwapilib2 | Слой поверх запросов. Сделайте JS-гаджеты проще. |
JsMwApi | Удобная оболочка для необработанных запросов с некоторыми помощниками для редактирования и анализа. |
Дополнительные библиотеки JavaScript доступны по адресу API:Client_code/All#JavaScript.
Имя | Описание |
mediawikiapi | Выполняет запросы (токены, информация о пользователе), вызовы входа в систему, загрузки и выхода из системы. Он обрабатывает запросы HTTPS и файлы cookie и может использоваться для загрузки файлов на Wikimedia Commons. |
Имя | Описание |
MatWiki | Предварительный (по состоянию на февраль 2019 г.) клиент MATLAB R2016b (9.1.x), поддерживающий только логины ботов и семантические запросы #ask. |
Имя | Описание |
WikiFunctions | Библиотека с классами для редактирования и получения списков страниц через API, используемая AutoWikiBrowser. |
LinqToWiki | Строго типизированная библиотека для доступа к большей части MediaWiki API с поддержкой автозаполнения. |
WikiClientLibrary | Клиентская библиотека .NET Standard и асинхронного API MediaWiki для вики-сайтов. Библиотека также поддерживает API для Flow / Wikibase / Wikia. |
Дополнительные библиотеки .NET доступны по адресу API:Client_code/All#.NET.
Имя | Описание |
ocaml-mediawiki | Привязка высокого уровня для MediaWiki API, написанная на OCaml. |
Дополнительные библиотеки PHP доступны по адресу API:Client_code/All#PHP.
Иногда люди пытаются использовать такие библиотеки для доступа к установке MediaWiki на том же сервере. Часто в этом нет необходимости, потому что сама MediaWiki написана на PHP, особенно когда единственная цель скрипта - взаимодействие с MediaWiki.
Имя | Описание |
Pywikibot | Коллекция скриптов Python и мощная библиотека для написания ботов. ( Git repository) ([irc: // freenode / pywikipediabot IRC]) |
mwclient | Библиотека Python, которая делает доступным большинство функций API. (PyPI) |
вики-скрипты | Фреймворк для написания ботов, сценариев обслуживания или выполнения анализа данных. |
Простые оболочки Python для интерфейсов без абстракции с MediaWiki API и базовой обработки сеанса:
Имя | Описание |
pywikiapi | Минималистичная библиотека, которая обрабатывает некоторые основные сложности API MediaWiki, такие как обработка продолжений, входа в систему, ошибок и предупреждений, но не накладывает никаких дополнительных уровней абстракции. |
Wikipedia | Библиотека Python, которая упрощает доступ к данным из Википедии и их анализ. |
wikitools | Предоставляет несколько уровней абстракции вокруг API. Не поддерживает Python 3. |
Дополнительные библиотеки Python доступны по адресу API:Client_code/All#Python.
Имя | Описание |
WikipediR | Оболочка для MediaWiki API, предназначенная, в частности, для «производственных» вики-сайтов Викимедиа, таких как Википедия. Может использоваться для получения текста страницы, информации о пользователях или истории страниц, а также элементов дерева категорий. |
Дополнительные библиотеки Ruby доступны по адресу API:Client_code/All#Ruby.
Имя | Описание |
Wikibase RS | Библиотека Rust для взаимодействия с Wikibase API и сериализации данных в структуры данных Rust. |
mediawiki_rust | Клиентская библиотека MediaWiki на Rust. |
Дополнительные библиотеки Rust доступны по адресу API:Client_code/All#Rust.
Имя | Описание |
scalawiki | Клиент MediaWiki на Scala. |
инфраструктура извлечения dbpedia | Инфраструктура извлечения данных для DBpedia с поддержкой источника Wiki, полученного через MediaWiki API. |
scmw | Простая оболочка API MediaWiki для нужд Commonist инструмента загрузки изображений. |
FAQ по написанию ботов
Википедия:Рекомендации юному ботоводу
Англоязычные: