API:Client code/ru

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page API:Client code and the translation is 0% complete.
Other languages:
English • ‎Türkçe • ‎español • ‎polski • ‎русский • ‎中文 • ‎日本語 • ‎한국어

Client libraries contain code that developers can use to help with common and basic tasks, so that they don't have to write the code from scratch when their projects interact with an API.

This page contains a set of lists, by language, of up-to three recommended client libraries that can be used with the MediaWiki Action API. The recommendations are based on evaluations using API:Client_code/Gold_standard .

New and/or unevaluated libraries should be added to API:Client_code/All .
Last activity refers to the last commit in the repository.
Dates and version numbers were updated on 2019-06-19.

Awk

Name Description Last release Release date Last activity
BotWikiAwk Framework and libraries for creating bots. Includes example bots. 27 марта 2019(2019-03-27)
Wikiget Awk CLI program to interface with MediaWiki API for read/write including OAuth. 8 июня 2019(2019-06-08)

C++

Name Description Last release Release date Last activity
libmediawiki A library that allows easy editing of a wiki through the MediaWiki API. 9 сентября 2017(2017-09-09)

Common Lisp

Name Description Last release Release date Last activity
cl-mediawiki A Common Lisp wrapper for the MediaWiki API. 10 ноября 2016(2016-11-10)

Go

Name Description Last release Release date Last activity
go-mediawiki Go wrapper for the MediaWiki API. v0.1 4 ноября 2013(2013-11-04) 8 февраля 2017(2017-02-08)
go-mwclient Wrapper for the MediaWiki API (supports maxlag, query continuations, OAuth). 1.0.3 3 августа 2018(2018-08-03) 3 августа 2018(2018-08-03)

Haskell

Name Description Last release Release date Last activity
haskell mediawiki A complete Haskell binding to the MediaWiki API letting you programmatically access (read and write) MediaWiki content. 0.2.6 20 ноября 2013(2013-11-20) 20 ноября 2013(2013-11-20)

Java

Name Description Last release Release date Last activity
JavaWikiBotFramework A library to retrieve data from and maintain MediaWiki-based wikis such as Wikipedia. 4.0.0 13 сентября 2016(2016-09-13) 15 февраля 2019(2019-02-15)
jwiki A library for effortlessly interacting with Wikipedia/MediaWiki. 1.8.0 14 апреля 2020(2020-04-14) 6 мая 2020(2020-05-06)
Bliki Engine Can convert wikicode to HTML, DocBook or PDF. Has a helper library for API calls. 27 апреля 2019(2019-04-27)

More Java libraries available at API:Client_code/All#Java.

JavaScript

Name Description Last release Release date Last activity
mwbot (Node.js) MWBot uses the Promise pattern and other ES6 methodologies, optimised for creating bots that make edits. Works with any MediaWiki site. v1.0.10 30 октября 2017(2017-10-30) 20 февраля 2019(2019-02-20)
nodemw (Node.js) A generic MediaWiki API client for Node.js. v0.12.2 16 сентября 2018(2018-09-16) 16 сентября 2018(2018-09-16)
mediawiki.api (browser) Generic MediaWiki API client for client-side JavaScript. It ships with MediaWiki core as a ResourceLoader module bundle. It abstracts some high-level concepts and provides a generic client for other queries. Maintained as part of MediaWiki.

In-wiki JavaScript clients:

Name Description Last release Release date Last activity
mwapilib2 A layer overtop of the requests. Make JS gadgets easier. 25 сентября 2016(2016-09-25)
JsMwApi A convenience wrapper around raw requests, with some helpers for editing and parsing. 11 июня 2014(2014-06-11)

More JavaScript libraries available at API:Client_code/All#JavaScript.

Lua

Name Description Last release Release date Last activity
mediawikiapi Makes query (tokens, userinfo), clientlogin, upload, and logout calls. It handles HTTPS requests and cookies and can be used to upload files to Wikimedia Commons. 20 сентября 2018(2018-09-20)

MATLAB

Name Description Last release Release date Last activity
MatWiki A preliminary (as of Feb 2019) MATLAB R2016b(9.1.x) client supporting just bot-logins & semantic #ask queries. v1.0.0 19 февраля 2019(2019-02-19) 19 февраля 2019(2019-02-19)

.NET

Name Description Last release Release date Last activity
WikiFunctions Library with classes for editing and getting lists of pages via the API, used by AutoWikiBrowser. 6.0.0.1 15 сентября 2018(2018-09-15) 16 июня 2019(2019-06-16)
LinqToWiki Strongly typed library for accessing most of MediaWiki API, with support for autocompletion. 1.5.0 7 мая 2015(2015-05-07) 7 мая 2015(2015-05-07)
WikiClientLibrary A .NET Standard & asynchronous MediaWiki API client library for wiki sites. The library also supports Flow/Wikibase/Wikia-specific API. v0.7.0-int.7 16 ноября 2019(2019-11-16) 16 ноября 2019(2019-11-16)

More .NET libraries available at API:Client_code/All#.NET.

OCaml

Name Description Last release Release date Last activity
ocaml-mediawiki A high-level binding for the MediaWiki API written in OCaml. 29 августа 2012(2012-08-29)

Perl

Name Description Last release Release date Last activity
MediaWiki::Bot A higher-level Perl module with read and write functions. Easily extensible with plugins, for example to provide administrator functions (Evaluation).

source code on Github.

5.006003 7 июля 2016(2016-07-07) 7 июля 2016(2016-07-07)
MediaWiki::API A Perl module for interfacing with the MediaWiki API with file upload/download and editing support. (Debian package). (Evaluation). 0.41 13 ноября 2015(2015-11-13) 13 ноября 2015(2015-11-13)

PHP

Name Description Last release Release date Last activity
mediawiki-api-base Library for basic MediaWiki api use. 2.4.0 2 ноября 2017(2017-11-02) 9 июля 2019(2019-07-09)
mediawiki-api A simple library for interacting with the MediaWiki API. 0.7.2 20 ноября 2017(2017-11-20) 6 апреля 2019(2019-04-06)
wikibase-api Library for querying Wikidata. 0.7 4 июля 2016(2016-07-04) 17 августа 2018(2018-08-17)

More PHP libraries available at API:Client_code/All#PHP.

Sometimes people try to use these kind of libraries to access a MediaWiki installation on the same server. This is often unnecessary because MediaWiki itself is written in PHP, especially when the only purpose of the script is interacting with MediaWiki. By require'ing WebStart.php (MW_INSTALL_PATH may need to be set beforehand, see Manual:$IP), a script gets access to MediaWiki components and consequently it can call the API internally or use other MediaWiki classes and functions directly, which greatly reduces server load.

Python

Name Description Last release Release date Last activity
Pywikibot A collection of python scripts and a powerful library for bot writing.(Git repository) (IRC) (Evaluation). 4.3.0 2 сентября 2020(2020-09-02) 13 сентября 2020(2020-09-13)
mwclient Python library that makes most of the API functions accessible. (PyPI) (Evaluation). 0.9.3 23 ноября 2018(2018-11-23) 10 июня 2019(2019-06-10)
wiki-scripts Framework for writing bots, maintenance scripts or performing data analysis. 1.2 31 декабря 2017(2017-12-31) 13 июня 2019(2019-06-13)

Simple Python wrappers for no-abstraction interfaces to the MediaWiki API and basic session handling:

Name Description Last release Release date Last activity
pywikiapi A minimalistic library that handles some of the core MediaWiki API complexities like handling continuations, login, errors, and warnings, but does not impose any additional abstraction layers. 1.3.2 13 апреля 2019(2019-04-13) 13 апреля 2019(2019-04-13)
Wikipedia A Python library that makes it easy to access and parse data from Wikipedia. v1.1 24 декабря 2013(2013-12-24) 11 ноября 2016(2016-11-11)
wikitools Provides several layers of abstraction around the API. Doesn't support Python 3. 0.41 7 июня 2015(2015-06-07) 28 августа 2016(2016-08-28)

More Python libraries available at API:Client_code/All#Python.

R

Name Description Last release Release date Last activity
WikipediR A wrapper for the MediaWiki API, aimed particularly at the Wikimedia 'production' wikis, such as Wikipedia. Can be used to retrieve page text, information about users or the history of pages, and elements of the category tree. 1.5.0 15 февраля 2017(2017-02-15) 15 февраля 2017(2017-02-15)

Ruby

Name Description Last release Release date Last activity
MediaWiki::Butt Stable and powerful Ruby framework for the API. (Evaluation) 3.0.0 19 октября 2017(2017-10-19) 3 января 2019(2019-01-03)
wikipedia-client Ruby framework using the API. v1.10.0 5 марта 2018(2018-03-05) 5 марта 2018(2018-03-05)
MediaWiki Ruby API Ruby API client library in active development by Wikimedia Foundation Release Engineering. 0.71 31 января 2017(2017-01-31) 5 декабря 2017(2017-12-05)

More Ruby libraries available at API:Client_code/All#Ruby.

Rust

Name Description Last release Release date Last activity
Wikibase RS Rust library to talk to the Wikibase API and serialize data into Rust data structures. 0.37 19 июня 2019(2019-06-19) 19 июня 2019(2019-06-19)
mediawiki_rust A MediaWiki client library in Rust. 23 июня 2019(2019-06-23)

More Rust libraries available at API:Client_code/All#Rust.

Scala

Name Description Last release Release date Last activity
scalawiki MediaWiki client in Scala. 0.6.3 17 сентября 2020(2020-09-17) 28 сентября 2019(2019-09-28)
dbpedia extraction framework Data extraction framework for DBpedia with support Wiki source retrived via MediaWiki API. DBpedia_2015-10 25 июля 2016(2016-07-25) 13 апреля 2019(2019-04-13)
scmw Simple MediaWiki API wrapper for needs of Commonist image upload tool. v-0.140.0 22 декабря 2017(2017-12-22) 22 декабря 2017(2017-12-22)

See also