Клиентские библиотеки содержат готовый код, который разработчики могут использовать в разработке ботов для решения различных задач. Благодаря библиотекам им не нужно писать код с нуля, когда их проекты взаимодействуют с API.
Эта страница содержит набор библиотек по языкам, для которых указано до трех рекомендуемых клиентских библиотек, которые можно использовать с MediaWiki Action API. Рекомендации основаны на оценках с использованием API:Client_code/Gold_standard.
Список библиотек API
Awk
Название
|
Описание
|
BotWikiAwk
|
Фреймворк и библиотеки для создания ботов. Включает примеры ботов.
|
Wikiget
|
Программа Awk CLI для взаимодействия с MediaWiki API для чтения / записи, включая OAuth.
|
C ++
Имя
|
Описание
|
libmediawiki
|
Библиотека, позволяющая легко редактировать вики через MediaWiki API.
|
Common Lisp
Имя
|
Описание
|
cl-mediawiki
|
Оболочка Common Lisp для API MediaWiki.
|
Go
Имя
|
Описание
|
go-mediawiki
|
Оболочка Go для MediaWiki API.
|
go-mwclient
|
Оболочка для MediaWiki API (поддерживает maxlag, продолжения запросов, OAuth).
|
Haskell
Имя
|
Описание
|
haskell mediawiki
|
Полная привязка Haskell к MediaWiki API, позволяющая программно получать доступ (читать и писать) к содержимому MediaWiki.
|
Java
Имя
|
Описание
|
JavaWikiBotFramework
|
Библиотека для получения данных и поддержки вики-сайтов на основе MediaWiki, таких как Википедия.
|
jwiki
|
Библиотека для простого взаимодействия с Wikipedia / MediaWiki.
|
Bliki Engine
|
Может конвертировать викикод в HTML, DocBook или PDF. Имеет вспомогательную библиотеку для вызовов API.
|
Дополнительные библиотеки Java доступны по адресу API:Client_code/All#Java.
JavaScript
Имя
|
Описание
|
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.
Lua
Имя
|
Описание
|
mediawikiapi
|
Выполняет запросы (токены, информация о пользователе), вызовы входа в систему, загрузки и выхода из системы. Он обрабатывает запросы HTTPS и файлы cookie и может использоваться для загрузки файлов на Wikimedia Commons.
|
MATLAB
Имя
|
Описание
|
MatWiki
|
Предварительный (по состоянию на февраль 2019 г.) клиент MATLAB R2016b (9.1.x), поддерживающий только логины ботов и семантические запросы #ask.
|
.NET
Имя
|
Описание
|
WikiFunctions
|
Библиотека с классами для редактирования и получения списков страниц через API, используемая AutoWikiBrowser.
|
LinqToWiki
|
Строго типизированная библиотека для доступа к большей части MediaWiki API с поддержкой автозаполнения.
|
WikiClientLibrary
|
Клиентская библиотека .NET Standard и асинхронного API MediaWiki для вики-сайтов. Библиотека также поддерживает API для Flow / Wikibase / Wikia.
|
Дополнительные библиотеки .NET доступны по адресу API:Client_code/All#.NET.
OCaml
Имя
|
Описание
|
ocaml-mediawiki
|
Привязка высокого уровня для MediaWiki API, написанная на OCaml.
|
Perl
PHP
Дополнительные библиотеки PHP доступны по адресу API:Client_code/All#PHP.
Иногда люди пытаются использовать такие библиотеки для доступа к установке MediaWiki на том же сервере. Часто в этом нет необходимости, потому что сама MediaWiki написана на PHP, особенно когда единственная цель скрипта - взаимодействие с MediaWiki.
Python
Имя
|
Описание
|
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.
R
Имя
|
Описание
|
WikipediR
|
Оболочка для MediaWiki API, предназначенная, в частности, для «производственных» вики-сайтов Викимедиа, таких как Википедия. Может использоваться для получения текста страницы, информации о пользователях или истории страниц, а также элементов дерева категорий.
|
Ruby
Дополнительные библиотеки Ruby доступны по адресу API:Client_code/All#Ruby.
Rust
Имя
|
Описание
|
Wikibase RS
|
Библиотека Rust для взаимодействия с Wikibase API и сериализации данных в структуры данных Rust.
|
mediawiki_rust
|
Клиентская библиотека MediaWiki на Rust.
|
Дополнительные библиотеки Rust доступны по адресу API:Client_code/All#Rust.
Scala
Имя
|
Описание
|
scalawiki
|
Клиент MediaWiki на Scala.
|
инфраструктура извлечения dbpedia
|
Инфраструктура извлечения данных для DBpedia с поддержкой источника Wiki, полученного через MediaWiki API.
|
scmw
|
Простая оболочка API MediaWiki для нужд Commonist инструмента загрузки изображений.
|
См. также
FAQ по написанию ботов
Википедия:Рекомендации юному ботоводу
Ссылки
Англоязычные: