Jump to content

API:Client code/pt: Difference between revisions

From mediawiki.org
Content deleted Content added
Created page with "Descrição"
FuzzyBot (talk | contribs)
Updating to match new version of source page
 
(29 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{API}}
{{API}}

As bibliotecas de cliente contêm código que os programadores podem utilizar para ajudar com as tarefas comuns e básicas, de maneira que não tenham que escrever o código desde o zero quando os seus projetos interagem com uma API.
As bibliotecas de cliente contêm código que os programadores podem utilizar para ajudar com as tarefas comuns e básicas, de maneira que não tenham que escrever o código desde o zero quando os seus projetos interagem com uma API.


<span lang="en" dir="ltr" class="mw-content-ltr">This page contains a set of lists, by programming language, of several recommended client libraries that can be used with the MediaWiki Action API.</span>
<span lang="en" dir="ltr" class="mw-content-ltr">This page contains a set of lists, by programming language, of several recommended client libraries that can be used with the MediaWiki Action API.</span>
<span lang="en" dir="ltr" class="mw-content-ltr">The recommendations are based on evaluations using {{ll|API:Client_code/Gold_standard}}.</span>
<span lang="en" dir="ltr" class="mw-content-ltr">The recommendations are based on evaluations using {{ll|API:Client_code/Gold_standard}}.</span>

{{Note|1=<span lang="en" dir="ltr" class="mw-content-ltr">New and/or unevaluated libraries can be added to {{ll|API:Client code/All}}.</span>}}
{{Note|1=<span lang="en" dir="ltr" class="mw-content-ltr">New and/or unevaluated libraries can be added to {{ll|API:Client code/All}}.</span>}}


Line 17: Line 14:
=== Awk ===
=== Awk ===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
!Último lançamento
! Último lançamento
!Data de lançamento
! Data de lançamento
!Última atividade
! Última atividade
|-
|-
|[https://github.com/greencardamom/BotWikiAwk BotWikiAwk]
|[https://github.com/greencardamom/BotWikiAwk BotWikiAwk]
|Estrutura e bibliotecas para criar robôs. Inclui robôs de exemplo.
| Estrutura e bibliotecas para criar robôs. Inclui robôs de exemplo.
|
|
|
|
Line 30: Line 27:
|-
|-
|[https://github.com/greencardamom/Wikiget Wikiget]
|[https://github.com/greencardamom/Wikiget Wikiget]
|<span lang="en" dir="ltr" class="mw-content-ltr">Awk CLI program to interface with MediaWiki API for read/write including OAuth.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Awk CLI program to interface with MediaWiki API for read/write including OAuth.</span>
|
|
|
|
Line 45: Line 42:
|-
|-
|[https://github.com/BorderCloud/bash-mediawiki bash-mediawiki]
|[https://github.com/BorderCloud/bash-mediawiki bash-mediawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">An example with Curl that allows easy editing/uploading of a wiki through the MediaWiki API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">An example with Curl that allows easy editing/uploading of a wiki through the MediaWiki API.</span>
|
|
|
|
Line 53: Line 50:
=== C++ ===
=== C++ ===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
!Último lançamento
! Último lançamento
!Data de lançamento
! Data de lançamento
!Última atividade
! Última atividade
|-
|-
|[https://techbase.kde.org/Development/Tutorials/Libmediawiki libmediawiki]
|[https://techbase.kde.org/Development/Tutorials/Libmediawiki libmediawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">A library that allows easy editing of a wiki through the MediaWiki API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A library that allows easy editing of a wiki through the MediaWiki API.</span>
|
|
|
|
Line 68: Line 65:
=== Common Lisp ===
=== Common Lisp ===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
!Último lançamento
! Último lançamento
!Data de lançamento
! Data de lançamento
!Última atividade
! Última atividade
|-
|-
|[https://github.com/AccelerationNet/cl-mediawiki cl-mediawiki]
|[https://github.com/AccelerationNet/cl-mediawiki cl-mediawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">A Common Lisp wrapper for the MediaWiki API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A Common Lisp wrapper for the MediaWiki API.</span>
|
|
|
|
Line 83: Line 80:
=== Elixir ===
=== Elixir ===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!Data de Lançamento
! Data de Lançamento
!Última atividade
! Última atividade
|-
|-
|[https://gitlab.com/adamwight/mediawiki_client_ex mediawiki_client_ex]
|[https://gitlab.com/adamwight/mediawiki_client_ex mediawiki_client_ex]
|<span lang="en" dir="ltr" class="mw-content-ltr">Adapter for the Action API, EventStreams, and ORES.</span> ([https://hexdocs.pm/mediawiki_client/readme.html Documentação])
| <span lang="en" dir="ltr" class="mw-content-ltr">Adapter for the Action API, EventStreams, and ORES.</span> ([https://hexdocs.pm/mediawiki_client/readme.html Documentação])
|0.5.3
|0.5.3
|{{date|2022|12|20}}
|{{date|2022|12|20}}
Line 98: Line 95:
===Go===
===Go===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
!Último lançamento
! Último lançamento
!Data de lançamento
! Data de lançamento
!Última atividade
! Última atividade
|-
|-
|[https://github.com/sadbox/go-mediawiki go-mediawiki]
|[https://github.com/sadbox/go-mediawiki go-mediawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">Go wrapper for the MediaWiki API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Go wrapper for the MediaWiki API.</span>
|v0.1
|v0.1
|{{date|2013|11|4}}
|{{date|2013|11|4}}
Line 111: Line 108:
|-
|-
|[https://github.com/cgt/go-mwclient go-mwclient]
|[https://github.com/cgt/go-mwclient go-mwclient]
|<span lang="en" dir="ltr" class="mw-content-ltr">Wrapper for the MediaWiki API (supports maxlag, query continuations, OAuth).</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Wrapper for the MediaWiki API (supports maxlag, query continuations, OAuth).</span>
|v1.2.0
|v1.2.0
|{{date|2020|6|3}}
|{{date|2020|6|3}}
Line 119: Line 116:
=== Haskell ===
=== Haskell ===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
!Último lançamento
! Último lançamento
!Data de lançamento
! Data de lançamento
!Última atividade
! Última atividade
|-
|-
|[https://hackage.haskell.org/package/mediawiki haskell mediawiki]
|[https://hackage.haskell.org/package/mediawiki haskell mediawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">A complete Haskell binding to the MediaWiki API letting you programmatically access (read and write) MediaWiki content.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A complete Haskell binding to the MediaWiki API letting you programmatically access (read and write) MediaWiki content.</span>
|0.2.6
|0.2.6
|{{date|2013|11|20}}
|{{date|2013|11|20}}
Line 134: Line 131:
=== Java ===
=== Java ===
{| class="wikitable"
{| class="wikitable"
!Nome
! Nome
!Descrição
! Descrição
! Último lançamento
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! Data de lançamento
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! Última atividade
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/eldur/jwbf JavaWikiBotFramework]
|[https://github.com/eldur/jwbf JavaWikiBotFramework]
|<span lang="en" dir="ltr" class="mw-content-ltr">A library to retrieve data from and maintain MediaWiki-based wikis such as Wikipedia.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A library to retrieve data from and maintain MediaWiki-based wikis such as Wikipedia.</span>
|4.0.0
|4.0.0
|{{date|2016|9|13}}
|{{date|2016|9|13}}
Line 147: Line 144:
|-
|-
|[https://github.com/fastily/jwiki jwiki]
|[https://github.com/fastily/jwiki jwiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">A library for effortlessly interacting with Wikipedia/MediaWiki.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A library for effortlessly interacting with Wikipedia/MediaWiki.</span>
|1.8.0
|1.8.0
|{{date|2020|4|14}}
|{{date|2020|4|14}}
Line 153: Line 150:
|-
|-
|[https://github.com/axkr/info.bliki.wikipedia_parser Bliki Engine]
|[https://github.com/axkr/info.bliki.wikipedia_parser Bliki Engine]
|<span lang="en" dir="ltr" class="mw-content-ltr">Can convert wikicode to HTML, DocBook or PDF.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Has a [https://bitbucket.org/axelclk/info.bliki.wiki/wiki/MediaWikiAPISupport helper library] for API calls.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Can convert wikicode to HTML, DocBook or PDF.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Has a [https://bitbucket.org/axelclk/info.bliki.wiki/wiki/MediaWikiAPISupport helper library] for API calls.</span>
|
|
|
|
Line 163: Line 160:
=== JavaScript ===
=== JavaScript ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://www.npmjs.com/package/mwn mwn] (Node.js)
|[https://www.npmjs.com/package/mwn mwn] (Node.js)
|<span lang="en" dir="ltr" class="mw-content-ltr">Mwn is a modern and feature-rich API client with support for both JavaScript and TypeScript.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Has classes for conveniently working with page titles and parsing wikitext.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Supports both OAuth and BotPasswords.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Mwn is a modern and feature-rich API client with support for both JavaScript and TypeScript.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Has classes for conveniently working with page titles and parsing wikitext.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Supports both OAuth and BotPasswords.</span>
|v3.0.1
|v3.0.1
|{{date|2023|09|30}}
|{{date|2023|09|30}}
Line 176: Line 173:
|-
|-
|[https://www.npmjs.com/package/mwbot-ts mwbot-ts] (Node.js)
|[https://www.npmjs.com/package/mwbot-ts mwbot-ts] (Node.js)
|<span lang="en" dir="ltr" class="mw-content-ltr">mwbot-ts is a TypeScript-compatible library featuring a flexible core class and an offline wikitext parser that handles even edge-case wiki markup.</span> <span lang="en" dir="ltr" class="mw-content-ltr">With the core class designed to be subclassed, it's suitable for implementing application-specific logic and methods.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Supports both OAuth and BotPasswords.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">mwbot-ts is a TypeScript-compatible library featuring a flexible core class and an offline wikitext parser that handles even edge-case wiki markup.</span> <span lang="en" dir="ltr" class="mw-content-ltr">With the core class designed to be subclassed, it's suitable for implementing application-specific logic and methods.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Supports both OAuth and BotPasswords.</span>
|v1.2.1
|v1.2.1
|{{date|2025|05|05}}
|{{date|2025|05|05}}
Line 182: Line 179:
|-
|-
|[https://www.npmjs.com/package/mwbot mwbot] (Node.js)
|[https://www.npmjs.com/package/mwbot mwbot] (Node.js)
|<span lang="en" dir="ltr" class="mw-content-ltr">MWBot uses the Promise pattern and other ES6 methodologies, optimised for creating bots that make edits.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Works with any MediaWiki site.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">MWBot uses the Promise pattern and other ES6 methodologies, optimised for creating bots that make edits.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Works with any MediaWiki site.</span>
|v2.1.3
|v2.1.3
|{{date|2017|10|30}}
|{{date|2017|10|30}}
Line 188: Line 185:
|-
|-
|[https://www.npmjs.com/package/nodemw nodemw] (Node.js)
|[https://www.npmjs.com/package/nodemw nodemw] (Node.js)
|<span lang="en" dir="ltr" class="mw-content-ltr">A generic MediaWiki API client for Node.js.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A generic MediaWiki API client for Node.js.</span>
|v0.24.1
|v0.24.1
|{{date|2018|09|16}}
|{{date|2018|09|16}}
Line 200: Line 197:
|-
|-
|[[wmdoc:mediawiki-core/master/js/mw.Api.html|mediawiki.api]] (browser)
|[[wmdoc:mediawiki-core/master/js/mw.Api.html|mediawiki.api]] (browser)
|<span lang="en" dir="ltr" class="mw-content-ltr">Generic MediaWiki API client for client-side JavaScript.</span> <span lang="en" dir="ltr" class="mw-content-ltr">It ships with MediaWiki core as a ResourceLoader module bundle.</span> <span lang="en" dir="ltr" class="mw-content-ltr">It abstracts some high-level concepts and provides a generic client for other queries.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Generic MediaWiki API client for client-side JavaScript.</span> <span lang="en" dir="ltr" class="mw-content-ltr">It ships with MediaWiki core as a ResourceLoader module bundle.</span> <span lang="en" dir="ltr" class="mw-content-ltr">It abstracts some high-level concepts and provides a generic client for other queries.</span>
|colspan=3|<span lang="en" dir="ltr" class="mw-content-ltr">Maintained as part of MediaWiki.</span>
|colspan=3| <span lang="en" dir="ltr" class="mw-content-ltr">Maintained as part of MediaWiki.</span>
|}
|}


Line 207: Line 204:


{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[[n:User:Bawolff/mwapilib2.js|mwapilib2]]
|[[n:User:Bawolff/mwapilib2.js|mwapilib2]]
|<span lang="en" dir="ltr" class="mw-content-ltr">A layer overtop of the requests.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Make JS gadgets easier.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A layer overtop of the requests.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Make JS gadgets easier.</span>
|
|
|
|
Line 220: Line 217:
|-
|-
|[[wikt:User_talk:Conrad.Irwin/Api.js|JsMwApi]]
|[[wikt:User_talk:Conrad.Irwin/Api.js|JsMwApi]]
|<span lang="en" dir="ltr" class="mw-content-ltr">A convenience wrapper around raw requests, with some helpers for editing and parsing.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A convenience wrapper around raw requests, with some helpers for editing and parsing.</span>
|
|
|
|
Line 231: Line 228:
=== Lua ===
=== Lua ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/trougnouf/dtMediaWiki/blob/master/dtMediaWiki.lua dtMediaWiki]
| [https://github.com/trougnouf/dtMediaWiki/blob/master/dtMediaWiki.lua dtMediaWiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">Makes query (tokens, userinfo), clientlogin, upload, and logout calls.</span> <span lang="en" dir="ltr" class="mw-content-ltr">It handles HTTPS requests and cookies and can be used to upload files to Wikimedia Commons.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Extension for [[w:Darktable|Darktable]].</span> <span lang="en" dir="ltr" class="mw-content-ltr">Makes query (tokens, userinfo), clientlogin, upload, and logout calls.</span> <span lang="en" dir="ltr" class="mw-content-ltr">It handles HTTPS requests and cookies and can be used to upload files to Wikimedia Commons.</span>
|
|
|
|
|{{date|2018|9|20}}
|{{date|2025|06|12}}
|}
|}


=== MATLAB ===
=== MATLAB ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/JRCSTU/MatWiki MatWiki]
|[https://github.com/JRCSTU/MatWiki MatWiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">A preliminary (as of Feb 2019) MATLAB R2016b(9.1.x) client supporting just bot-logins & semantic #ask queries.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A preliminary (as of Feb 2019) MATLAB R2016b(9.1.x) client supporting just bot-logins & semantic #ask queries.</span>
|v1.0.0
|v1.0.0
|{{date|2019|2|19}}
|{{date|2019|2|19}}
Line 261: Line 258:
=== .NET ===
=== .NET ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
| [[w:Wikipedia:WikiFunctions|WikiFunctions]]
| [[w:Wikipedia:WikiFunctions|WikiFunctions]]
Line 274: Line 271:
|-
|-
|[https://github.com/svick/LINQ-to-Wiki LinqToWiki]
|[https://github.com/svick/LINQ-to-Wiki LinqToWiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">Strongly typed library for accessing most of MediaWiki API, with support for autocompletion.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Strongly typed library for accessing most of MediaWiki API, with support for autocompletion.</span>
|1.5.0
|1.5.0
|{{date|2015|5|7}}
|{{date|2015|5|7}}
Line 280: Line 277:
|-
|-
|[https://github.com/CXuesong/WikiClientLibrary WikiClientLibrary]
|[https://github.com/CXuesong/WikiClientLibrary WikiClientLibrary]
|<span lang="en" dir="ltr" class="mw-content-ltr">A .NET Standard & asynchronous MediaWiki API client library for wiki sites.</span> <span lang="en" dir="ltr" class="mw-content-ltr">The library also supports Flow/Wikibase/Wikia-specific API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A .NET Standard & asynchronous MediaWiki API client library for wiki sites.</span> <span lang="en" dir="ltr" class="mw-content-ltr">The library also supports Flow/Wikibase/Wikia-specific API.</span>
|v0.7.5
|v0.7.5
|{{date|2021|1|31}}
|{{date|2021|1|31}}
Line 290: Line 287:
=== OCaml ===
=== OCaml ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/ppedrot/ocaml-mediawiki ocaml-mediawiki]
|[https://github.com/ppedrot/ocaml-mediawiki ocaml-mediawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">A high-level binding for the MediaWiki API written in OCaml.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A high-level binding for the MediaWiki API written in OCaml.</span>
|
|
|
|
Line 305: Line 302:
=== Perl ===
=== Perl ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://metacpan.org/pod/MediaWiki::Bot MediaWiki::Bot]
|[https://metacpan.org/pod/MediaWiki::Bot MediaWiki::Bot]
|<span lang="en" dir="ltr" class="mw-content-ltr">A higher-level Perl module with read and write functions.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Easily extensible with plugins, for example [https://metacpan.org/pod/MediaWiki::Bot::Plugin::Admin to provide administrator functions] ([[Special:MyLanguage/API:Client code/Evaluations/MediaWiki-Bot|Evaluation]]).</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A higher-level Perl module with read and write functions.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Easily extensible with plugins, for example [https://metacpan.org/pod/MediaWiki::Bot::Plugin::Admin to provide administrator functions] ([[Special:MyLanguage/API:Client code/Evaluations/MediaWiki-Bot|Evaluation]]).</span>
<span lang="en" dir="ltr" class="mw-content-ltr">[https://github.com/MediaWiki-Bot/MediaWiki-Bot source code on GitHub].</span>
<span lang="en" dir="ltr" class="mw-content-ltr">[https://github.com/MediaWiki-Bot/MediaWiki-Bot source code on GitHub].</span>
|5.006003
|5.006003
Line 319: Line 316:
|-
|-
|[https://metacpan.org/pod/MediaWiki::API MediaWiki::API]
|[https://metacpan.org/pod/MediaWiki::API MediaWiki::API]
|<span lang="en" dir="ltr" class="mw-content-ltr">A Perl module for interfacing with the MediaWiki API with file upload/download and editing support.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([https://packages.debian.org/libmediawiki-api-perl Debian package]).</span> <span lang="en" dir="ltr" class="mw-content-ltr">([[Special:MyLanguage/API:Client code/Evaluations/MediaWiki-API|Evaluation]]).</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A Perl module for interfacing with the MediaWiki API with file upload/download and editing support.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([https://packages.debian.org/libmediawiki-api-perl Debian package]).</span> <span lang="en" dir="ltr" class="mw-content-ltr">([[Special:MyLanguage/API:Client code/Evaluations/MediaWiki-API|Evaluation]]).</span>
|0.41
|0.41
|{{date|2015|11|13}}
|{{date|2015|11|13}}
Line 327: Line 324:
=== PHP ===
=== PHP ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/addwiki/mediawiki-api-base mediawiki-api-base]
|[https://github.com/addwiki/mediawiki-api-base mediawiki-api-base]
|<span lang="en" dir="ltr" class="mw-content-ltr">Library for basic [[Special:MyLanguage/MediaWiki|MediaWiki]] api use.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Library for basic [[Special:MyLanguage/MediaWiki|MediaWiki]] api use.</span>
|2.4.0
|2.4.0
|{{date|2017|11|2}}
|{{date|2017|11|2}}
Line 340: Line 337:
|-
|-
|[https://github.com/addwiki/mediawiki-api mediawiki-api]
|[https://github.com/addwiki/mediawiki-api mediawiki-api]
|<span lang="en" dir="ltr" class="mw-content-ltr">A simple library for interacting with the MediaWiki API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A simple library for interacting with the MediaWiki API.</span>
|0.7.2
|0.7.2
|{{date|2017|11|20}}
|{{date|2017|11|20}}
Line 346: Line 343:
|-
|-
|[https://github.com/addwiki/wikibase-api wikibase-api]
|[https://github.com/addwiki/wikibase-api wikibase-api]
|<span lang="en" dir="ltr" class="mw-content-ltr">Library for querying [[Special:MyLanguage/Wikidata|Wikidata]].</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Library for querying [[Special:MyLanguage/Wikidata|Wikidata]].</span>
|0.7
|0.7
|{{date|2016|7|4}}
|{{date|2016|7|4}}
Line 359: Line 356:
=== Python ===
=== Python ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Type hints</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Type hints</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|
|{{ll|Manual:Pywikibot|Pywikibot}} [[wmdoc:pywikibot/stable/|docs]]
{||-
| [[File:Pywikibot_MW_gear_icon.svg|32 px]]||{{ll|Manual:Pywikibot|Pywikibot}} [[wmdoc:pywikibot/stable/|docs]]
|}
|{{yes}}
|{{yes}}
|<span lang="en" dir="ltr" class="mw-content-ltr">A collection of Python scripts and a powerful library for bot writing.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([//pypi.python.org/pypi/pywikibot/ PyPI]) ([[git:pywikibot/core|Git repository]]) ({{irc|pywikibot}}) ([[Special:MyLanguage/API:Client code/Evaluations/Pywikibot|Evaluation]]).</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A collection of Python scripts and a powerful library for bot writing.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([//pypi.python.org/pypi/pywikibot/ PyPI]) ([[git:pywikibot/core|Git repository]]) ({{irc|pywikibot}}) ([[Special:MyLanguage/API:Client code/Evaluations/Pywikibot|Evaluation]]).</span>
|10.5.0
|11.6.0
|{{date|2025|09|21}}
|{{date|2026|07|22}}
|{{date|2025|09}}
|{{date|2026|08}}
|-
|-
|[https://github.com/fastily/pwiki pwiki] [https://fastily.github.io/pwiki/ docs]
|[https://github.com/fastily/pwiki pwiki] [https://fastily.github.io/pwiki/ docs]
| {{yes}}
| {{yes}}
|<span lang="en" dir="ltr" class="mw-content-ltr">A Python library for developing bots/tools, focused on ease of use and simplicity.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A Python library for developing bots/tools, focused on ease of use and simplicity.</span>
|1.1.1
|1.1.1
|{{date|2021|10|15}}
|{{date|2021|10|15}}
Line 382: Line 382:
|[https://github.com/mwclient/mwclient mwclient] [https://mwclient.readthedocs.io/ docs]
|[https://github.com/mwclient/mwclient mwclient] [https://mwclient.readthedocs.io/ docs]
| {{no}}
| {{no}}
|<span lang="en" dir="ltr" class="mw-content-ltr">Python library that makes most of the API functions accessible.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([//pypi.python.org/pypi/mwclient/ PyPI]) ([[Special:MyLanguage/API:Client code/Evaluations/mwclient|Evaluation]]).</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Python library that makes most of the API functions accessible.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([//pypi.python.org/pypi/mwclient/ PyPI]) ([[Special:MyLanguage/API:Client code/Evaluations/mwclient|Evaluation]]).</span>
|0.10.1
|0.10.1
|{{date|2020|5|28}}
|{{date|2020|5|28}}
Line 389: Line 389:
|[https://github.com/lahwaacz/wiki-scripts wiki-scripts] [https://lahwaacz.github.io/wiki-scripts/ docs]
|[https://github.com/lahwaacz/wiki-scripts wiki-scripts] [https://lahwaacz.github.io/wiki-scripts/ docs]
| {{no}}
| {{no}}
|<span lang="en" dir="ltr" class="mw-content-ltr">Framework for writing bots, maintenance scripts or performing data analysis.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Framework for writing bots, maintenance scripts or performing data analysis.</span>
|1.2
|1.2
|{{date|2017|12|31}}
|{{date|2017|12|31}}
Line 398: Line 398:


{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Type hints</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Type hints</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://pypi.org/project/pywikiapi/ pywikiapi]
|[https://pypi.org/project/pywikiapi/ pywikiapi]
| {{no}}
| {{no}}
|<span lang="en" dir="ltr" class="mw-content-ltr">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.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">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.</span>
|1.3.2
|1.3.2
|{{date|2019|4|13}}
|{{date|2019|4|13}}
Line 414: Line 414:
|[https://github.com/goldsmith/Wikipedia Wikipedia] [https://wikipedia.readthedocs.io/ docs]
|[https://github.com/goldsmith/Wikipedia Wikipedia] [https://wikipedia.readthedocs.io/ docs]
| {{no}}
| {{no}}
|<span lang="en" dir="ltr" class="mw-content-ltr">A Python library that makes it easy to access and parse data from Wikipedia.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A Python library that makes it easy to access and parse data from Wikipedia.</span>
|v1.1
|v1.1
|{{date|2013|12|24}}
|{{date|2013|12|24}}
Line 421: Line 421:
|[https://github.com/alexz-enwp/wikitools wikitools]
|[https://github.com/alexz-enwp/wikitools wikitools]
| {{no}}
| {{no}}
|<span lang="en" dir="ltr" class="mw-content-ltr">Provides several layers of abstraction around the API.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Doesn't support Python 3.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Provides several layers of abstraction around the API.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Doesn't support Python 3.</span>
|0.41
|0.41
|{{date|2015|6|7}}
|{{date|2015|6|7}}
Line 431: Line 431:
=== R ===
=== R ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://cran.r-project.org/web/packages/WikipediR/index.html WikipediR]
|[https://cran.r-project.org/web/packages/WikipediR/index.html WikipediR]
|<span lang="en" dir="ltr" class="mw-content-ltr">A wrapper for the MediaWiki API, aimed particularly at the Wikimedia 'production' wikis, such as Wikipedia.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Can be used to retrieve page text, information about users or the history of pages, and elements of the category tree.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A wrapper for the MediaWiki API, aimed particularly at the Wikimedia 'production' wikis, such as Wikipedia.</span> <span lang="en" dir="ltr" class="mw-content-ltr">Can be used to retrieve page text, information about users or the history of pages, and elements of the category tree.</span>
|1.5.0
|1.5.0
|{{date|2017|2|15}}
|{{date|2017|2|15}}
Line 446: Line 446:
=== Ruby ===
=== Ruby ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/ftb-gamepedia/mediawiki-butt-ruby MediaWiki::Butt]
|[https://github.com/ftb-gamepedia/mediawiki-butt-ruby MediaWiki::Butt]
|<span lang="en" dir="ltr" class="mw-content-ltr">Stable and powerful Ruby framework for the API.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([[Special:MyLanguage/API:Client code/Evaluations/MediaWiki-Butt|Evaluation]])</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Stable and powerful Ruby framework for the API.</span> <span lang="en" dir="ltr" class="mw-content-ltr">([[Special:MyLanguage/API:Client code/Evaluations/MediaWiki-Butt|Evaluation]])</span>
|3.0.0
|3.0.0
|{{date|2017|10|19}}
|{{date|2017|10|19}}
Line 459: Line 459:
|-
|-
|[https://github.com/kenpratt/wikipedia-client wikipedia-client]
|[https://github.com/kenpratt/wikipedia-client wikipedia-client]
|<span lang="en" dir="ltr" class="mw-content-ltr">Ruby framework using the API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Ruby framework using the API.</span>
|v1.10.0
|v1.10.0
|{{date|2018|3|5}}
|{{date|2018|3|5}}
Line 465: Line 465:
|-
|-
|[[gerrit:admin/projects/mediawiki/ruby/api|MediaWiki Ruby API]]
|[[gerrit:admin/projects/mediawiki/ruby/api|MediaWiki Ruby API]]
|<span lang="en" dir="ltr" class="mw-content-ltr">Ruby API client library in active development by [[Special:MyLanguage/Wikimedia Release Engineering Team|Wikimedia Foundation Release Engineering]].</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Ruby API client library in active development by [[Special:MyLanguage/Wikimedia Release Engineering Team|Wikimedia Foundation Release Engineering]].</span>
|0.71
|0.71
|{{date|2017|1|31}}
|{{date|2017|1|31}}
Line 475: Line 475:
=== Rust ===
=== Rust ===
{| class="wikitable" style="width:100%"
{| class="wikitable" style="width:100%"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://crates.io/crates/wikibase Wikibase RS]
|[https://crates.io/crates/wikibase Wikibase RS]
|<span lang="en" dir="ltr" class="mw-content-ltr">Rust library to talk to the Wikibase API and serialize data into Rust data structures.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Rust library to talk to the Wikibase API and serialize data into Rust data structures.</span>
|0.37
|0.37
|{{date|2019|6|19}}
|{{date|2019|6|19}}
Line 488: Line 488:
|-
|-
|[https://github.com/magnusmanske/mediawiki_rust mediawiki_rust]
|[https://github.com/magnusmanske/mediawiki_rust mediawiki_rust]
|<span lang="en" dir="ltr" class="mw-content-ltr">A MediaWiki client library in Rust.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A MediaWiki client library in Rust.</span>
|
|
|
|
Line 494: Line 494:
|-
|-
|[[mwbot-rs]]
|[[mwbot-rs]]
|<span lang="en" dir="ltr" class="mw-content-ltr">A framework for writing bots on MediaWiki</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">A framework for writing bots on MediaWiki</span>
|0.4.3
|0.4.3
|{{date|2022|10|15}}
|{{date|2022|10|15}}
Line 500: Line 500:
|-
|-
|[https://crates.io/crates/wiki wiki]
|[https://crates.io/crates/wiki wiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">Library for interacting with MediaWiki APIs</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Library for interacting with MediaWiki APIs</span>
|0.0.3
|0.0.3
|{{date|2022|8|10}}
|{{date|2022|8|10}}
Line 506: Line 506:
|-
|-
| [https://crates.io/crates/mediawiki_rest_api mediawiki_rest_api]
| [https://crates.io/crates/mediawiki_rest_api mediawiki_rest_api]
|<span lang="en" dir="ltr" class="mw-content-ltr">Library for interacting with the MediaWiki REST API</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Library for interacting with the MediaWiki REST API</span>
|0.0.1
|0.0.1
|{{date|2025|10|21}}
|{{date|2025|10|21}}
Line 516: Line 516:
=== Scala ===
=== Scala ===
{| class="wikitable"
{| class="wikitable"
!<span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Name</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Description</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last release</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Release date</span>
!<span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
! <span lang="en" dir="ltr" class="mw-content-ltr">Last activity</span>
|-
|-
|[https://github.com/intracer/scalawiki scalawiki]
|[https://github.com/intracer/scalawiki scalawiki]
|<span lang="en" dir="ltr" class="mw-content-ltr">MediaWiki client in Scala.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">MediaWiki client in Scala.</span>
|0.6.3
|0.6.3
|{{date|2020|9|17}}
|{{date|2020|9|17}}
Line 529: Line 529:
|-
|-
|[https://github.com/dbpedia/extraction-framework dbpedia extraction framework]
|[https://github.com/dbpedia/extraction-framework dbpedia extraction framework]
|<span lang="en" dir="ltr" class="mw-content-ltr">Data extraction framework for DBpedia with support Wiki source retrieved via MediaWiki API.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Data extraction framework for DBpedia with support Wiki source retrieved via MediaWiki API.</span>
|DBpedia_2015-10
|DBpedia_2015-10
|{{date|2016|7|25}}
|{{date|2016|7|25}}
Line 535: Line 535:
|-
|-
|[https://github.com/ritschwumm/scmw scmw]
|[https://github.com/ritschwumm/scmw scmw]
|<span lang="en" dir="ltr" class="mw-content-ltr">Simple MediaWiki API wrapper for needs of [[commons:Commons:Commonist|Commonist]] image upload tool.</span>
| <span lang="en" dir="ltr" class="mw-content-ltr">Simple MediaWiki API wrapper for needs of [[commons:Commons:Commonist|Commonist]] image upload tool.</span>
|v-0.140.0
|v-0.140.0
|{{date|2017|12|22}}
|{{date|2017|12|22}}

Latest revision as of 21:12, 10 August 2026

As bibliotecas de cliente contêm código que os programadores podem utilizar para ajudar com as tarefas comuns e básicas, de maneira que não tenham que escrever o código desde o zero quando os seus projetos interagem com uma API.

This page contains a set of lists, by programming language, of several recommended client libraries that can be used with the MediaWiki Action API. The recommendations are based on evaluations using API:Código Cliente/Gold standard .

New and/or unevaluated libraries can be added to API:Client code/All .

Bibliotecas de cliente da API

Last activity refers to the last commit in the repository.
Dates and version numbers were updated on 2019-06-19.

Awk

Nome Descrição Último lançamento Data de lançamento Última atividade
BotWikiAwk Estrutura e bibliotecas para criar robôs. Inclui robôs de exemplo.
Wikiget Awk CLI program to interface with MediaWiki API for read/write including OAuth.

Bash

Nome Descrição Último lançamento Data de lançamento Última atividade
bash-mediawiki An example with Curl that allows easy editing/uploading of a wiki through the MediaWiki API.

C++

Nome Descrição Último lançamento Data de lançamento Última atividade
libmediawiki A library that allows easy editing of a wiki through the MediaWiki API.

Common Lisp

Nome Descrição Último lançamento Data de lançamento Última atividade
cl-mediawiki A Common Lisp wrapper for the MediaWiki API.

Elixir

Nome Descrição Last release Data de Lançamento Última atividade
mediawiki_client_ex Adapter for the Action API, EventStreams, and ORES. (Documentação) 0.5.3

Go

Nome Descrição Último lançamento Data de lançamento Última atividade
go-mediawiki Go wrapper for the MediaWiki API. v0.1
go-mwclient Wrapper for the MediaWiki API (supports maxlag, query continuations, OAuth). v1.2.0

Haskell

Nome Descrição Último lançamento Data de lançamento Última atividade
haskell mediawiki A complete Haskell binding to the MediaWiki API letting you programmatically access (read and write) MediaWiki content. 0.2.6

Java

Nome Descrição Último lançamento Data de lançamento Última atividade
JavaWikiBotFramework A library to retrieve data from and maintain MediaWiki-based wikis such as Wikipedia. 4.0.0
jwiki A library for effortlessly interacting with Wikipedia/MediaWiki. 1.8.0
Bliki Engine Can convert wikicode to HTML, DocBook or PDF. Has a helper library for API calls.

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

JavaScript

Name Description Last release Release date Last activity
mwn (Node.js) Mwn is a modern and feature-rich API client with support for both JavaScript and TypeScript. Has classes for conveniently working with page titles and parsing wikitext. Supports both OAuth and BotPasswords. v3.0.1
mwbot-ts (Node.js) mwbot-ts is a TypeScript-compatible library featuring a flexible core class and an offline wikitext parser that handles even edge-case wiki markup. With the core class designed to be subclassed, it's suitable for implementing application-specific logic and methods. Supports both OAuth and BotPasswords. v1.2.1
mwbot (Node.js) MWBot uses the Promise pattern and other ES6 methodologies, optimised for creating bots that make edits. Works with any MediaWiki site. v2.1.3
nodemw (Node.js) A generic MediaWiki API client for Node.js. v0.24.1
wikiapi (Node.js) A simple way to access MediaWiki API via JavaScript with simple wikitext parser. v1.20.0
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.
JsMwApi A convenience wrapper around raw requests, with some helpers for editing and parsing.

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

Lua

Name Description Last release Release date Last activity
dtMediaWiki Extension for Darktable. 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.

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

.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.4.0.0
LinqToWiki Strongly typed library for accessing most of MediaWiki API, with support for autocompletion. 1.5.0
WikiClientLibrary A .NET Standard & asynchronous MediaWiki API client library for wiki sites. The library also supports Flow/Wikibase/Wikia-specific API. v0.7.5

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.

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
MediaWiki::API A Perl module for interfacing with the MediaWiki API with file upload/download and editing support. (Debian package). (Evaluation). 0.41

PHP

Name Description Last release Release date Last activity
mediawiki-api-base Library for basic MediaWiki api use. 2.4.0
mediawiki-api A simple library for interacting with the MediaWiki API. 0.7.2
wikibase-api Library for querying Wikidata. 0.7

More PHP libraries available at API:Client code/All#PHP.

Python

Name Type hints Description Last release Release date Last activity
Pywikibot docs
Yes A collection of Python scripts and a powerful library for bot writing. (PyPI) (Git repository) (#pywikibot connect) (Evaluation). 11.6.0
pwiki docs Yes A Python library for developing bots/tools, focused on ease of use and simplicity. 1.1.1
mwclient docs No Python library that makes most of the API functions accessible. (PyPI) (Evaluation). 0.10.1
wiki-scripts docs No Framework for writing bots, maintenance scripts or performing data analysis. 1.2

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

Name Type hints Description Last release Release date Last activity
pywikiapi No 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
Wikipedia docs No A Python library that makes it easy to access and parse data from Wikipedia. v1.1
wikitools No Provides several layers of abstraction around the API. Doesn't support Python 3. 0.41

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

Ruby

Name Description Last release Release date Last activity
MediaWiki::Butt Stable and powerful Ruby framework for the API. (Evaluation) 3.0.0
wikipedia-client Ruby framework using the API. v1.10.0
MediaWiki Ruby API Ruby API client library in active development by Wikimedia Foundation Release Engineering. 0.71

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
mediawiki_rust A MediaWiki client library in Rust.
mwbot-rs A framework for writing bots on MediaWiki 0.4.3
wiki Library for interacting with MediaWiki APIs 0.0.3
mediawiki_rest_api Library for interacting with the MediaWiki REST API 0.0.1

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
dbpedia extraction framework Data extraction framework for DBpedia with support Wiki source retrieved via MediaWiki API. DBpedia_2015-10
scmw Simple MediaWiki API wrapper for needs of Commonist image upload tool. v-0.140.0

See also