506:) content. This can be done by including a line "Accept-Encoding: gzip" in the HTTP request header; if the HTTP reply header contains "Content-Encoding: gzip", the document is in GZIP form, otherwise, it is in the regular uncompressed form. Note that this is specific to the web server and not to the MediaWiki software. Other sites employing MediaWiki may not have this feature. If you are using an existing bot framework, it should handle low-level operations like this.
146:
774:
291:
162:
1272:
bot for renaming categories. You could create an HTML form into which you will type the current and desired names of a category. When the form is submitted, your bot could read these inputs, then edit all the articles in the current category and move them to the desired category. (Obviously, any bot with a form interface would need to be secured somehow from random web surfers.)
697:, the edit token is just '+\') then the bot most likely is not logged in. This might be due to a number of factors: failure in authentication with the server, a dropped connection, a timeout of some sort, or an error in storing or returning the correct cookies. If it is not because of a programming error, just log in again to refresh the login cookies. The bots
896:, the bot will most likely be given a trial period (usually with a restriction on the number of edits or days it is to run for) during which it may actually edit to enable fine-tuning and iron out any bugs. At the end of the trial period, if everything went according to plan, the bot should get approval for full-scale operation.
1271:
can also be used for programming bots. MediaWiki developers are already familiar with PHP, since that is the language MediaWiki and its extensions are written in. PHP is an especially good choice if you wish to provide a webform-based interface to your bot. For example, suppose you wanted to create a
753:
Generally speaking, if an edit fails to complete the bot should check the page again before trying to make a new edit, to make sure the edit is still appropriate. Further, if a bot rechecks a page to resubmit a change, it should be careful to avoid any behavior that could lead to an infinite loop and
398:
Because bots access pages the same way people do, bots can experience the same kind of difficulties that human users do. They can get caught in edit conflicts, have page timeouts, or run across other unexpected complications while requesting pages or making edits. Because the volume of work done by a
647:
The editing process involves two HTTP requests. First, a request for an edit token must be made. Then, a second HTTP request must be made that sends the new content of the page along with the edit token just obtained. It is not possible to make an edit in a single HTTP request. An edit token remains
514:
Approved bots need to be logged in to make edits. Although a bot can make read requests without logging in, bots that have completed testing should log in for all activities. Bots logged in from an account with the bot flag can obtain more results per query from the MediaWiki API (api.php). Most bot
390:
Just like a human editor, a
Knowledge (XXG) bot reads Knowledge (XXG) pages, and makes changes where it thinks changes need to be made. The difference is that, although bots are faster and less prone to fatigue than humans, they are nowhere near as bright as we are. Bots are good at repetitive tasks
324:
and many of these bots publish their source code, which can sometimes be reused with little additional development time. There are also a number of standard bot frameworks available. Modifying an existing bot or using a framework greatly speeds development time. Also, because these code bases are in
394:
In the most typical case, a bot logs in to its own account and requests pages from
Knowledge (XXG) in much the same way as a browser does – although it does not display the page on screen, but works on it in memory – and then programmatically examines the page code to see if any changes need to be
244:
are automatic processes that interact with
Knowledge (XXG) (and other Wikimedia projects) as though they were human editors. This page attempts to explain how to carry out the development of a bot for use on Wikimedia projects and much of this is transferable to other wikis based on MediaWiki. The
1158:
There are many options available for users wishing to make their code open. Hosting the code in a subpage of the bot's userspace can be a hassle to maintain if not automated and results in the code being multi-licensed under
Knowledge (XXG)'s licensing terms in addition to any other terms you may
1050:
It should be easy to quickly disable your bot. If your bot goes bad, it is your responsibility to clean up after it! You could have the bot refuse to run if a message has been left on its talk page, on the assumption that the message may be a complaint against its activities; this can be checked
811:
is the task of precisely describing the software to be written, possibly in a rigorous way. You should come up with a detailed proposal of what you want it to do. Try to discuss this proposal with some editors and refine it based on feedback. Even a great idea can be made better by incorporating
1041:
If your bot is doing anything that requires judgment or evaluation of context (e.g., correcting spelling) then you should consider making your bot manually-assisted, which means that a human verifies all edits before they are saved. This significantly reduces the bot's speed, but it also
1201:
Bots can be written in almost any programming language. The choice of a language depends on the experience and preferences of the bot writer, and on the availability of libraries relevant to bot development. The following list includes some languages commonly used for bots:
908:
the internal design of your bot for the purpose of future maintenance and enhancement. This is especially important if you are going to allow clones of your bot. Ideally, you should post the source code of your bot on its userpage or in a revision control system (see
1851:– A library actively maintained and written in modern ES6 using promises (supporting async–await). This is a large library, and has classes for conveniently working with page titles and wikitext (including limited wikitext parsing capabilities). Also supports
345:
Writing a new bot requires significant programming ability. A completely new bot must undergo substantial testing before it will be approved for regular operation. To write a successful bot, planning is crucial. The following considerations are important:
844:
is concerned with making sure the software system will meet the requirements of the product as well as ensuring that future requirements can be addressed. Certain programming languages are better suited to some tasks than others, for more details see
384:
2317:
861:(or coding) involves turning design and planning into code. It may be the most obvious part of the software engineering job, but it is not necessarily the largest portion. In the implementation stage you should:
936:
and enhancing your bot to cope with newly discovered bugs or new requirements can take far more time than the initial development of the software. To ease maintenance, document your code from the beginning.
270:
It is often far simpler to request a bot job from an existing bot. If you have only periodic requests or are uncomfortable with programming, this is usually the best solution. These requests can be made at
1775:
on .NET, that allows to build programs and web robots easily to manage information on MediaWiki-powered sites. Now translated to several languages. Detailed compiled documentation is available in
English.
1538:
Supports main article and file stuff. Authentication, checking if pages exist, reading and editing pages/sections. Getting file information, downloading and uploading files. Aims to be easy to use.
1259:– A fairly complete MediaWiki bot framework written in Perl. Provides a higher level of abstraction than MediaWiki::API. Plugins provide administrator and steward functionality. Currently unsupported.
1243:
from your browser. If your internet service provider provides you with webspace, the chances are good that you have access to a Perl build on the webserver from which you can run your Perl programs.
593:. The bot must save these cookies and send them back every time it makes a request (this is particularly crucial for editing). On the English Knowledge (XXG), the following cookies should be used:
952:
In addition to the official bot policy, which covers the main points to consider when developing your bot, there are a number of more general advisory points to consider when developing your bot.
888:
A good way of testing your bot as you are developing is to have it show the changes (if any) it would have made to a page, rather than actually editing the live wiki. Some bot frameworks (such as
632:
for making edits to
Knowledge (XXG) pages, as well as other operations that modify existing content such as rollback. The token looks like a long hexadecimal number followed by '+\', for example:
3231:
1127:
Many bot operators choose to make their code open source, and occasionally it may be required before approval for particularly complex bots. Making your code open source has several advantages:
337:. For some of these bot frameworks, such as PWB, a general familiarity with scripts is all that is necessary to run the bot successfully (it is important to update these frameworks regularly).
1115:
If the bot is fully automated and performs regular edits, you should periodically check it runs as specified, and its behaviour has not been altered by software changes. Consider adding it to
2736:
787:
The first task in creating a
Knowledge (XXG) bot is extracting the requirements or coming up with an idea. If you don't have an idea of what to write a bot for, you could pick up ideas at
275:. In addition, there are a number of tools available to anyone. Most of these take the form of enhanced web browsers with MediaWiki-specific functionality. The most popular of these is
3348:
1180:
2059:
325:
common usage and are maintained community projects, it is far easier to get bots based on these frameworks approved for use. The most popular and common of these frameworks is
3069:
1418:
Base library for interaction with the MediaWiki API, provides you with ways to handle logging in, out and handling tokens as well as easily getting and posting requests.
921:
You should be ready to respond to queries about or objections to your bot on your user talk page, especially if it is operating in a potentially sensitive area, such as
333:. It is thoroughly documented and tested and many standardized Pywikibot scripts (bot instructions) are already available. Other examples of bot frameworks can be found
399:
bot is larger than that done by a live person, the bot is more likely to encounter these issues. Thus, it is important to consider these situations when writing a bot.
245:
explanation is geared mainly towards those who have some prior programming experience, but are unsure of how to apply this knowledge to creating a
Knowledge (XXG) bot.
91:
2641:
2480:
876:
Create a user page for your bot. Your bot's edits must not be made under your own account. Your bot will need its own account with its own username and password.
253:
Bots can automate tasks and perform them much faster than humans. If you have a simple task that you need to perform lots of times (an example might be to add a
1991:
766:
Actually, coding or writing a bot is only one part of developing a bot. You should generally follow the development cycle below to ensure that your bot follows
3074:
3010:
279:(AWB), a browser specifically designed to assist with editing on Knowledge (XXG) and other Wikimedia projects. A mostly complete list of tools can be found at
1089:, unless the edits are set to indicate a bot. Once the bot has been approved and given its bot flag permission, one can add "bot=True" to the API call - see
879:
Add the same information to the user page of the bot. It would be a good idea to add a link to the approval page (whether approved or not) for each function.
320:
If you decide you need a bot of your own due to the frequency or novelty of your requirements, you don't need to write one from scratch. There are already a
2897:
2838:
869:
when logged in to create the account, linking it to yours. (If you do not create the bot account while logged in, it is likely to be blocked as a possible
185:; rather, its purpose is to explain certain aspects of Knowledge (XXG)'s norms, customs, technicalities, or practices. It may reflect differing levels of
1134:
Others can use your code to build their own bots. A user new to bot writing may be able to use your code as an example or a template for their own bots.
407:
In order to make changes to
Knowledge (XXG) pages, a bot necessarily has to retrieve pages from Knowledge (XXG) and send edits back. There are several
988:
whenever possible, and set the query limits to the largest values that the server permits, to minimize the total number of requests that must be made.
2693:
2571:
2052:
3256:
979:
If writing a bot in a framework that does not support maxlag, limit the total requests (read and write requests together) to no more than 10/minute.
131:
3129:
2651:
1785:, is a library of stuff useful for bots, such as generating lists, loading/editing articles, connecting to the recent changes IRC channel and more.
1176:
3401:
3330:
3198:
3183:
2688:
2566:
1069:
Just like a human, if your bot makes edits to a talk page on
Knowledge (XXG), it should sign its post with four tildes (~~~~). Signatures belong
976:
with a maximum lag of 5 seconds. This will enable the bot to run quickly when server load is low, and throttle the bot when server load is high.
941:
86:
2624:
515:
frameworks should handle login and cookies automatically, but if you are not using an existing framework, you will need to follow these steps.
2490:
1910:
717:
eventually get caught in an edit conflict of one sort or another, and should include some mechanism to test for and accommodate these issues.
648:
the same for the duration of a logged-in session, so the edit token needs to be retrieved only once and can be used for all subsequent edits.
55:
1131:
It allows others to review your code for potential bugs. As with prose, it is often difficult for the author of code to adequately review it.
794:
Make sure an existing bot isn't already doing what you think your bot should do. To see what tasks are already being performed by a bot, see
3210:
3064:
3059:
2818:
2087:
991:
Edit (write) requests are more expensive in server time than read requests. Be edit-light and design your code to keep edits to a minimum.
586:
where TOKEN is the token from the previous result. The HTTP cookies from the previous request must also be passed with the second request.
3273:
3166:
2629:
2045:
424:). This library was specifically written to permit automated processes such as bots to make queries and post changes. Data is returned in
182:
1648:– A Python-2 only lightweight bot framework that uses the MediaWiki API exclusively for getting data and editing, used and maintained by
1061:). Or you could have a page that will turn the bot off when changed; this can be checked by loading the page contents before each edit.
3203:
3134:
2998:
2823:
2698:
1934:– API client. Last updated January 2016. Tested up to MediaWiki 1.22, was then compatible with Wikimedia wikis. Unknown if still works.
1997:
1027:
Test your code thoroughly before making large automated runs. Individually examine all edits on trial runs to verify they are perfect.
2666:
1152:
Open-source code, while rarely required, is typically encouraged in keeping with the open and transparent nature of Knowledge (XXG).
616:
Main-account login via "action=login" is deprecated and may stop working without warning. To continue login with "action=login", see
3368:
2979:
2892:
2091:
408:
124:
3363:
2927:
2159:
1987:
programming language. There are no published bot frameworks for VBScript, but some examples of bots that use it can be seen below:
1116:
913:) if you want others to be able to run clones of it. This code should be well documented (usually using comments) for ease of use.
795:
178:
119:
438:
Built-in feature of MediaWiki, available on all Wikimedia servers. Other non-Wikimedia wikis may disable or restrict write access.
2230:
3380:
3336:
3193:
3188:
2904:
2561:
454:
280:
48:
3341:
2799:
770:. Failure to comply with the policy may lead to your bot failing to be approved or being blocked from editing Knowledge (XXG).
644:
The role of edit tokens is to prevent "edit hijacking", where users are tricked into making an edit by clicking a single link.
3375:
3156:
2988:
2843:
2683:
2336:
2237:
2125:
1919:
2443:
1155:
Before sharing code, make sure that sensitive information such as passwords is separated into a file that isn't made public.
610:
3353:
3161:
2964:
2731:
2120:
1276:
356:
Will the bot's requests, edits, or other actions be logged? If so, will the logs be stored on local media, or on wiki pages?
254:
170:
2661:
1623:
1239:
If located on a webserver, you can start your program running and interface with your program while it is running via the
1013:
Back off upon receiving errors from the server. Errors such as timeouts are often an indication of heavy server load. Use
818:
The bot is harmless (it must not make edits that could be considered disruptive to the smooth running of the encyclopedia)
330:
2656:
2213:
64:
3139:
2448:
1579:
1553:
659:
3323:
3241:
2746:
2346:
2312:
2024:
started developing Lua's bot framework for Wikimedia projects. Please contact Jim Carter on their talk page to discuss.
276:
32:
3049:
2453:
1896:
1804:
1253:– Basic interface to the API, allowing scripts to automate editing and extraction of data from MediaWiki driven sites.
2954:
2914:
2828:
2285:
1883:– A simple way to access MediaWiki API via JavaScript with simple wikitext parser, using CeJS MediaWiki module. See
2974:
2947:
2804:
1750:
1142:
1000:
3406:
3099:
2858:
2307:
2115:
2105:
1693:– a preliminary (as of Feb 2019) MATLAB R2016b(9.1.x) client supporting just bot-logins and semantic #ask queries.
395:
made. It then makes and submits whatever edits it was designed to do, again in much the same way a browser would.
136:
2758:
2753:
2181:
3151:
3015:
2242:
2169:
1796:
969:. If you don't, your bot may encounter errors and may end up blocked by the technical staff at the server level.
788:
272:
81:
3005:
2782:
2539:
2428:
1706:
1240:
359:
Will the bot run inside a web browser (for example, written in JavaScript), or will it be a standalone program?
3288:
2280:
2006:– Several scripts showing the usage of VBScript (Javascript, XMLHTTP, MSHTML, XMLDOM, COM) for batch uploads.
2710:
2500:
2485:
2383:
2225:
1615:
Where possible. Excludes uploading images and other such tasks which are not currently supported by the API.
1160:
3236:
2993:
2218:
1218:
767:
41:
3079:
2705:
2544:
2329:
905:
713:
Edit conflicts occur when multiple, overlapping edit attempts are made on the same page. Almost every bot
362:
If the bot is a standalone program, will it run on your local computer, or on a remote server such as the
3293:
3084:
2922:
2863:
2196:
2083:
1148:
If you abandon the project, it allows other users to run your bot tasks without having to write new code.
190:
186:
71:
3054:
2789:
2191:
1284:
1094:
1086:
973:
841:
114:
2777:
2671:
2079:
200:
1010:
Do not make multi-threaded requests. Wait for one server request to complete before beginning another.
369:
If the bot runs on a remote server, will other editors be able to operate the bot or start it running?
257:
to all pages in a category with 1000 pages), then this is a task better suited to a bot than a human.
2833:
2770:
2505:
2393:
2361:
2259:
2031:
2003:
933:
858:
808:
617:
363:
3283:
3278:
3146:
3124:
2549:
2356:
2295:
1014:
3268:
3263:
3114:
2959:
2937:
2636:
2351:
1342:
3089:
2512:
2458:
2324:
2176:
2142:
1980:
1730:
1374:
1329:
442:
429:
101:
3306:
3301:
3178:
2603:
1792:
1484:
1196:
476:
GET request to index.php will give the unprocessed wikitext source code of a page. For example:
1778:
966:
3027:
2887:
2870:
2726:
2270:
2247:
2186:
2147:
1714:
1164:
545:
https://en.wikipedia.org/w/api.php?action=query&meta=tokens&type=login&format=json
3246:
3119:
2378:
1373:
Large framework, currently undergoing rewrite. Documentation currently non-existent, so poke
893:
870:
240:
25:
3109:
2678:
2578:
2438:
1138:
1004:
746:
attributes, and check the server responses for indications of errors. For more details, see
629:
283:. Tools, such as AWB, can often be operated with little or no understanding of programming.
3022:
2853:
2164:
2095:
1782:
1074:
821:
The bot is useful (it provides a useful service more effectively than a human editor could)
321:
3358:
3173:
2969:
2588:
2583:
2495:
2416:
2371:
2290:
2137:
2017:
1734:
1672:
1633:
1500:
889:
419:
326:
922:
755:
720:
Bots that use the Mediawiki API (api.php) should retrieve the edit token, along with the
1192:
2880:
2388:
2366:
2201:
2152:
2068:
1906:
1702:
1492:
1337:
1168:
450:
290:
1870:
773:
3395:
2932:
2813:
2741:
2646:
2465:
2411:
2403:
2275:
2208:
1649:
1423:
1382:
1333:
1310:
1090:
3215:
1228:
415:
2470:
2423:
2132:
1984:
1791:— is a portable & asynchronous MediaWiki API client library on .NET Standard. (
1722:
1585:
1548:
1543:
840:
you might create a bot, and which programming language(s) and tools you would use.
1915:
1606:
Does not include those who worked on frameworks forked to create listed framework.
1279:
table may provide some insight into the capabilities of the major bot frameworks.
1073:
on talk namespaces with the exception of project pages used for discussion (e.g.,
502:
Some Knowledge (XXG) web servers are configured to grant requests for compressed (
1256:
1250:
609:
cookie is required to actually send an edit or commit some change, otherwise the
2341:
2021:
1948:
1931:
1788:
1589:
1413:
1387:
1224:
590:
1965:
1925:
1866:
994:
Try to consolidate edits. One single large edit is better than 10 smaller ones.
688:
https://en.wikipedia.org/w/api.php?action=query&meta=tokens&format=json
589:
A successful login attempt will result in the Wikimedia server setting several
2942:
2875:
2765:
2619:
2614:
2475:
1852:
1726:
1663:
1496:
1021:
962:
702:
1668:
815:
In the most basic form, your specified bot must meet the following criteria:
2556:
2534:
2526:
2522:
2433:
1710:
1172:
519:
2037:
2027:
1454:
1428:
383:
1645:
747:
488:
action=query&prop=revisions&rvprop=content&rvexpandtemplates=1
2848:
2593:
2302:
1976:
1826:
1653:
693:
If the edit token the bot receives does not have the hexadecimal string (
523:
490:
is roughly equivalent, and allows for retrieving additional information.
479:
https://en.wikipedia.org/search/?title=Help:Creating_a_bot&action=raw
1880:
1768:
391:
that have easily defined patterns, where few decisions have to be made.
1758:
1718:
1677:
1659:
1210:
732:
can be used to retrieve both the token and page contents in one query (
1884:
1680:– A read-only MediaWiki API wrapper in Python, which is simple to use.
1533:
1505:
1463:
mentioned above, this adds more advanced services for the API such as
1368:
1888:
1874:
1860:
1856:
1820:
1639:
353:
Will you create the bot alone, or with the help of other programmers?
1944:
1922:. Last updated December 2017, no longer maintained, but still works.
1848:
1690:
1832:
1592:). Updated for 2010 and 2015 API changes. Supports file uploading.
453:
can be used to obtain bulk export of page content in XML form. See
1869:– An implementation of the MediaWiki JS interface in Node.js. See
1754:
1738:
1015:
a sequence of increasingly longer delays between repeated requests
772:
496:
Built-in feature of MediaWiki, available on all Wikimedia servers.
463:
Built-in feature of MediaWiki, available on all Wikimedia servers.
526:
requests are easily visible in URL, logins via GET are disabled.
3037:
1952:
1814:
1742:
1103:
to the edit/save command will set the edit as a bot edit - e.g.
985:
530:
503:
425:
2041:
1213:
is an easy language for bots small and large, including OAuth.
560:
https://en.wikipedia.org/w/api.php?action=login&format=json
3041:
1928:– API client. Last updated March 2018. Unknown if still works.
1772:
1746:
1268:
285:
156:
15:
1105:
PageObject.edit(text=pagetext, bot=True, summary=pagesummary)
1097:. In Python, using either mwclient or wikitools, then adding
382:
289:
2000:– Login, get raw watchlist, save to file, logout, close IE
1057:
734:
687:
559:
544:
537:
Request 1 – this is a GET request to obtain a login token
846:
334:
2030:
is an example using Lua to write a wikibot, created by
1175:. Knowledge (XXG) has articles comparing the different
892:) have pre-coded methods for showing diffs. During the
866:
478:
222:
215:
208:
1955:
as a query data format. Supports maxlag and assertion.
1281:
940:
Major functionality changes of approved bots must be
350:
Will the bot be manually assisted or fully automated?
1032:
Common bot features you should consider implementing
658:. Make a request with the following parameters (see
3224:
3098:
3036:
2913:
2798:
2719:
2602:
2521:
2402:
2258:
2104:
1104:
728:loading the page text in preparation for the edit;
1835:– A simple and easy-to-use Java wiki bot framework
518:For security, login data must be passed using the
484:action=query&prop=revisions&rvprop=content
306:
1823:– A Java wiki bot framework that is only one file
777:Overview of Knowledge (XXG) bot development cycle
552:Request 2 – this is a POST to complete the login
873:or unauthorised bot until you verify ownership)
2053:
1992:User:Smallman12q/Scripts/cleanuplistingtowiki
1642:– An interface for interacting with MediaWiki
651:To obtain an edit token, follow these steps:
445:for those wanting to test api.php's features.
8:
1966:http://hackage.haskell.org/package/mediawiki
904:An important (and often overlooked) task is
762:Overview of the process of developing a bot
468:Raw (Wikitext) page processing: sending an
3331:Category:Knowledge (XXG) information pages
2060:
2046:
2038:
748:MediaWiki:API:Edit - Create and Edit pages
1119:to be notified if the bot stops working.
1007:in your HTTP client library, if possible.
322:number of bots running on Knowledge (XXG)
1829:– The library used by the WPCleaner tool
824:The bot does not waste server resources.
724:and the last revision "base" timestamp,
183:Knowledge (XXG)'s policies or guidelines
1909:– API client. Actively maintained. See
1662:– An API-based framework maintained by
1636:– Probably the most used bot framework.
1599:
1584:Fork of older wikibot.classes (used by
1159:specify. A better solution is to use a
685:The URL will look something like this:
1223:Example bots in the GitHub account of
865:Create an account for your bot. Click
754:any behavior that could even resemble
705:to make sure that they are logged in.
2016:During the Lua Annual Workshop 2016,
910:
847:§ Programming languages and libraries
789:requests for work to be done by a bot
738:). When submitting the edit, set the
7:
1117:Knowledge (XXG):Bot activity monitor
1093:in order to hide the bot's edits in
948:General guidelines for running a bot
796:the list of currently operating bots
374:How does a Knowledge (XXG) bot work?
261:Considerations before creating a bot
3070:User CSS for monospaced coding font
2318:Non-admin and admin-only page moves
1671:– A wikitext parser, maintained by
1187:Programming languages and libraries
660:mw:API:Edit - Create&Edit pages
455:Manual:Parameters to Special:Export
411:(APIs) available for that purpose.
281:Knowledge (XXG):Tools/Editing tools
1998:User:Smallman12q/VBS/Savewatchlist
1920:Wikimedia Release Engineering Team
676:The token will be returned in the
638:d41d8cd98f00b204e9800998ecf8427e+\
409:application programming interfaces
329:(PWB), a bot framework written in
14:
3402:Knowledge (XXG) information pages
1085:A bot's edits will be visible at
628:Knowledge (XXG) uses a system of
249:Why would I need to create a bot?
3011:Bug reports and feature requests
1994:– Login and give preview of edit
1947:– implements MediaWiki API as a
1737:, .NET programs can also run on
1705:is a set of languages including
1024:to ensure your bot is logged in.
613:error message will be returned.
160:
154:Knowledge (XXG) information page
144:
3324:Category:Knowledge (XXG) how-to
2839:Template sandbox and test cases
2078:Get personal technical help at
1298:PHP versions confirmed working
474:action=raw&templates=expand
2069:Knowledge (XXG) technical help
1183:, many of which have no cost.
1042:significantly reduces errors.
611:MediaWiki:Session fail preview
522:method. Because parameters of
1:
2004:Commons:User:Smallbot#Sources
965:header for your bot, per the
2694:How to improve image quality
2572:Complete diff and link guide
1885:Knowledge (XXG) bot examples
768:Knowledge (XXG)'s bot policy
273:Knowledge (XXG):Bot requests
3130:Cleaning up vandalism tools
3016:TimedMediaHandler extension
2652:Preparing images for upload
1951:package. Is planned to use
1817:– A Java wiki bot framework
1001:HTTP persistent connections
967:Wikimedia User-Agent policy
680:attribute of the response.
533:, two requests are needed:
309:to explore available tools.
3423:
3216:Beta Features at MediaWiki
2689:Basic bitmap image editing
2567:Simple diff and link guide
1779:WikiFunctions .NET library
1190:
1143:security through obscurity
529:To log a bot in using the
198:
3317:
2491:Advanced table formatting
2075:
1771:– a full-featured client
1304:Last master branch update
1217:Framework and libraries:
1181:websites for code hosting
1111:Monitoring the bot status
812:ideas from other editors.
3211:Wikimedia Cloud Services
3065:Common.js and common.css
3060:Catalogue of CSS classes
2819:Advanced template coding
2662:Options to hide an image
2088:village pump (technical)
1241:Common Gateway Interface
3335:Further navigation at:
3075:Classes in microformats
2630:Moving files to Commons
2449:Conditional expressions
1815:Java Wiki Bot Framework
1769:DotNetWikiBot Framework
1161:revision control system
1139:good security practices
656:MediaWiki API (api.php)
3135:Customizing watchlists
3050:Cascading Style Sheets
2824:Template documentation
2699:Graphics Lab resources
2642:Introduction to images
2454:Switch parser function
1197:mw:Alternative parsers
1091:mw:API:Edit#Parameters
923:fair-use image cleanup
778:
574:lgpassword=BOTPASSWORD
387:
294:
2948:File description page
2667:Extended image syntax
1095:Special:RecentChanges
1087:Special:RecentChanges
1075:articles for deletion
831:Software architecture
776:
386:
379:Overview of operation
293:
87:Requests for Approval
3407:Knowledge (XXG) bots
3199:Navigation shortcuts
3184:Alternative browsing
2182:Multilingual support
2160:How to create a page
2032:User:Alexander Misel
624:Editing; edit tokens
618:Special:BotPasswords
482:. An API query with
179:encyclopedic article
2905:Guide to Scribbling
2783:EasyTimeline syntax
2562:Simplest diff guide
2429:Line-break handling
1311:Exclusion compliant
1288:
730:prop=info|revisions
432:for more details).
341:Important questions
266:Reuse existing bots
49:Bot Approvals Group
2898:Costs and benefits
2844:Citation templates
2711:Visual file markup
2684:Graphics tutorials
2625:Creation and usage
2501:Conditional tables
2384:User contributions
2325:Notifications/Echo
2238:User access levels
2226:Special Characters
2126:Keyboard shortcuts
2034:, with simple API.
1981:scripting language
1932:MediaWiki::Gateway
1916:mediawiki/ruby/api
1731:Windows PowerShell
1461:mediawiki-api-base
1388:mediawiki-api-base
1375:User:Cyberpower678
1282:
1193:mw:API:Client code
956:Bot best practices
917:Queries/Complaints
779:
569:lgname=BOTUSERNAME
388:
295:
3389:
3388:
3369:Citation metadata
3274:Navigation popups
3232:AfC helper script
3225:Automated editing
3080:Markup validation
2965:Project/Wikipedia
2732:Graphs and charts
2706:Sound file markup
2608:videos and sounds
2471:Sections and TOCs
2271:Special page help
1918:– API client by
1789:WikiClientLibrary
1757:as well as under
1715:Visual Basic .NET
1596:
1595:
1485:chunked uploading
1477:RevisionPatroller
1277:PHP bot functions
1046:Disabling the bot
1037:Manual assistance
911:#Open-source bots
894:approvals process
565:POST parameters:
441:There is also an
313:
312:
233:
232:
152:
151:
3414:
3204:Optimum tool set
3055:HTML in wikitext
2999:User page design
2790:WikiHiero syntax
2657:Uploading images
2647:Picture tutorial
2214:Software notices
2192:Page information
2062:
2055:
2048:
2039:
1926:wikipedia-client
1669:mwparserfromhell
1616:
1613:
1607:
1604:
1483:, etc. Supports
1482:
1478:
1474:
1470:
1466:
1462:
1459:Built on top of
1289:
1177:software options
1123:Open-source bots
1106:
1101:
1060:
1054:
974:maxlag parameter
745:
741:
737:
731:
723:
690:
679:
672:
667:
580:
575:
570:
562:
547:
489:
485:
481:
475:
471:
422:
303:
286:
225:
218:
211:
171:information page
164:
163:
157:
148:
147:
120:Activity monitor
106:
100:
16:
3422:
3421:
3417:
3416:
3415:
3413:
3412:
3411:
3392:
3391:
3390:
3385:
3313:
3242:AutoWikiBrowser
3220:
3094:
3032:
2909:
2893:Labeled section
2834:Template limits
2794:
2771:Musical symbols
2747:To scale charts
2715:
2598:
2517:
2506:Sortable tables
2398:
2394:What links here
2362:Related changes
2347:Pending changes
2313:History merging
2296:Reset passwords
2254:
2100:
2071:
2066:
2013:
1974:
1962:
1941:
1907:MediaWiki::Butt
1900:
1842:
1808:
1781:– Bundled with
1700:
1687:
1627:
1620:
1619:
1614:
1610:
1605:
1601:
1480:
1476:
1472:
1468:
1464:
1460:
1315:Admin functions
1266:
1237:
1208:
1199:
1189:
1125:
1113:
1099:
1083:
1067:
1056:
1052:
1048:
1039:
1034:
958:
950:
931:
919:
902:
886:
856:
833:
805:
784:
764:
743:
739:
733:
729:
721:
711:
686:
677:
670:
665:
626:
578:
573:
568:
558:
543:
512:
487:
483:
477:
473:
469:
457:for arguments;
420:
405:
381:
376:
343:
318:
304:
299:
277:AutoWikiBrowser
268:
263:
251:
229:
228:
221:
214:
207:
203:
195:
194:
161:
155:
145:
141:
104:
98:
77:
12:
11:
5:
3420:
3418:
3410:
3409:
3404:
3394:
3393:
3387:
3386:
3384:
3383:
3378:
3373:
3372:
3371:
3361:
3356:
3351:
3346:
3345:
3344:
3342:Administrators
3334:
3327:
3318:
3315:
3314:
3312:
3311:
3310:
3309:
3304:
3296:
3291:
3286:
3281:
3276:
3271:
3266:
3261:
3260:
3259:
3254:
3244:
3239:
3234:
3228:
3226:
3222:
3221:
3219:
3218:
3213:
3208:
3207:
3206:
3201:
3196:
3191:
3186:
3176:
3171:
3170:
3169:
3164:
3159:
3149:
3144:
3143:
3142:
3132:
3127:
3125:Citation tools
3122:
3117:
3112:
3106:
3104:
3102:
3096:
3095:
3093:
3092:
3087:
3082:
3077:
3072:
3067:
3062:
3057:
3052:
3046:
3044:
3034:
3033:
3031:
3030:
3025:
3020:
3019:
3018:
3013:
3003:
3002:
3001:
2991:
2986:
2985:
2984:
2983:
2982:
2967:
2962:
2957:
2952:
2951:
2950:
2940:
2935:
2930:
2925:
2919:
2917:
2915:Data structure
2911:
2910:
2908:
2907:
2902:
2901:
2900:
2895:
2885:
2884:
2883:
2873:
2868:
2867:
2866:
2861:
2851:
2846:
2841:
2836:
2831:
2829:Template index
2826:
2821:
2816:
2810:
2808:
2803:
2796:
2795:
2793:
2792:
2787:
2786:
2785:
2775:
2774:
2773:
2766:Musical scores
2763:
2762:
2761:
2751:
2750:
2749:
2744:
2739:
2729:
2723:
2721:
2720:Other graphics
2717:
2716:
2714:
2713:
2708:
2703:
2702:
2701:
2696:
2691:
2681:
2676:
2675:
2674:
2669:
2664:
2659:
2654:
2649:
2644:
2634:
2633:
2632:
2627:
2617:
2611:
2609:
2607:
2606:files: images,
2600:
2599:
2597:
2596:
2591:
2586:
2581:
2576:
2575:
2574:
2569:
2564:
2554:
2553:
2552:
2547:
2542:
2531:
2529:
2519:
2518:
2516:
2515:
2510:
2509:
2508:
2503:
2498:
2493:
2488:
2483:
2473:
2468:
2463:
2462:
2461:
2456:
2451:
2446:
2436:
2431:
2426:
2421:
2420:
2419:
2408:
2406:
2400:
2399:
2397:
2396:
2391:
2386:
2381:
2376:
2375:
2374:
2364:
2359:
2357:Recent changes
2354:
2349:
2344:
2339:
2334:
2333:
2332:
2322:
2321:
2320:
2315:
2305:
2300:
2299:
2298:
2288:
2286:Emailing users
2283:
2278:
2273:
2267:
2265:
2261:
2256:
2255:
2253:
2252:
2251:
2250:
2240:
2235:
2234:
2233:
2223:
2222:
2221:
2211:
2206:
2205:
2204:
2194:
2189:
2184:
2179:
2174:
2173:
2172:
2162:
2157:
2156:
2155:
2150:
2145:
2140:
2130:
2129:
2128:
2123:
2112:
2110:
2108:technical help
2107:
2102:
2101:
2076:
2073:
2072:
2067:
2065:
2064:
2057:
2050:
2042:
2036:
2035:
2025:
2012:
2009:
2008:
2007:
2001:
1995:
1973:
1970:
1969:
1968:
1961:
1958:
1957:
1956:
1940:
1937:
1936:
1935:
1929:
1923:
1913:
1899:
1894:
1893:
1892:
1878:
1871:mock-mediawiki
1867:mock-mediawiki
1864:
1841:
1838:
1837:
1836:
1830:
1824:
1818:
1807:
1802:
1801:
1800:
1786:
1776:
1703:Microsoft .NET
1699:
1698:Microsoft .NET
1696:
1695:
1694:
1686:
1683:
1682:
1681:
1675:
1666:
1657:
1643:
1637:
1626:
1621:
1618:
1617:
1608:
1598:
1597:
1594:
1593:
1582:
1577:
1574:
1571:
1568:
1565:
1562:
1559:
1556:
1554:botclasses.php
1551:
1547:
1540:
1539:
1536:
1531:
1528:
1525:
1522:
1519:
1516:
1513:
1511:
1508:
1503:
1489:
1488:
1465:RevisionGetter
1457:
1452:
1449:
1446:
1443:
1440:
1437:
1434:
1431:
1426:
1420:
1419:
1416:
1411:
1408:
1405:
1402:
1399:
1396:
1393:
1390:
1385:
1379:
1378:
1371:
1366:
1363:
1360:
1357:
1354:
1351:
1348:
1345:
1340:
1326:
1325:
1322:
1319:
1316:
1313:
1308:
1305:
1302:
1299:
1296:
1293:
1265:
1262:
1261:
1260:
1257:MediaWiki::Bot
1254:
1251:MediaWiki::API
1236:
1233:
1232:
1231:
1221:
1207:
1204:
1188:
1185:
1150:
1149:
1146:
1141:, rather than
1137:It encourages
1135:
1132:
1124:
1121:
1112:
1109:
1082:
1079:
1066:
1063:
1051:using the API
1047:
1044:
1038:
1035:
1033:
1030:
1029:
1028:
1025:
1018:
1011:
1008:
997:
996:
995:
989:
982:
981:
980:
970:
957:
954:
949:
946:
930:
927:
918:
915:
901:
898:
885:
882:
881:
880:
877:
874:
859:Implementation
855:
854:Implementation
852:
851:
850:
832:
829:
828:
827:
826:
825:
822:
819:
813:
804:
801:
800:
799:
792:
783:
780:
763:
760:
740:starttimestamp
722:starttimestamp
710:
709:Edit conflicts
707:
683:
682:
674:
673:
668:
642:
641:
640:
633:
625:
622:
607:enwiki_session
603:enwikiUserName
584:
583:
582:
581:
576:
571:
563:
549:
548:
511:
508:
500:
499:
498:
497:
466:
465:
464:
451:Special:Export
448:
447:
446:
439:
430:output formats
404:
401:
380:
377:
375:
372:
371:
370:
367:
360:
357:
354:
351:
342:
339:
317:
316:Reuse codebase
314:
311:
310:
298:
296:
267:
264:
262:
259:
250:
247:
231:
230:
227:
226:
219:
212:
204:
199:
196:
176:
175:
167:
165:
153:
150:
149:
142:
140:
139:
134:
129:
128:
127:
122:
112:
110:Creating a Bot
107:
96:
95:
94:
84:
78:
76:
75:
68:
61:
60:
59:
45:
38:
37:
36:
21:
19:
13:
10:
9:
6:
4:
3:
2:
3419:
3408:
3405:
3403:
3400:
3399:
3397:
3382:
3379:
3377:
3374:
3370:
3367:
3366:
3365:
3362:
3360:
3357:
3355:
3352:
3350:
3349:Accessibility
3347:
3343:
3340:
3339:
3338:
3333:
3332:
3328:
3326:
3325:
3320:
3319:
3316:
3308:
3305:
3303:
3300:
3299:
3297:
3295:
3292:
3290:
3287:
3285:
3282:
3280:
3277:
3275:
3272:
3270:
3267:
3265:
3262:
3258:
3255:
3253:
3250:
3249:
3248:
3245:
3243:
3240:
3238:
3235:
3233:
3230:
3229:
3227:
3223:
3217:
3214:
3212:
3209:
3205:
3202:
3200:
3197:
3195:
3194:Editing tools
3192:
3190:
3189:Browser tools
3187:
3185:
3182:
3181:
3180:
3177:
3175:
3172:
3168:
3165:
3163:
3160:
3158:
3155:
3154:
3153:
3150:
3148:
3145:
3141:
3138:
3137:
3136:
3133:
3131:
3128:
3126:
3123:
3121:
3118:
3116:
3113:
3111:
3108:
3107:
3105:
3101:
3100:Customisation
3097:
3091:
3090:Useful styles
3088:
3086:
3083:
3081:
3078:
3076:
3073:
3071:
3068:
3066:
3063:
3061:
3058:
3056:
3053:
3051:
3048:
3047:
3045:
3043:
3039:
3035:
3029:
3026:
3024:
3021:
3017:
3014:
3012:
3009:
3008:
3007:
3004:
3000:
2997:
2996:
2995:
2992:
2990:
2987:
2981:
2978:
2977:
2976:
2973:
2972:
2971:
2968:
2966:
2963:
2961:
2958:
2956:
2953:
2949:
2946:
2945:
2944:
2941:
2939:
2936:
2934:
2931:
2929:
2926:
2924:
2921:
2920:
2918:
2916:
2912:
2906:
2903:
2899:
2896:
2894:
2891:
2890:
2889:
2886:
2882:
2879:
2878:
2877:
2874:
2872:
2869:
2865:
2862:
2860:
2857:
2856:
2855:
2852:
2850:
2847:
2845:
2842:
2840:
2837:
2835:
2832:
2830:
2827:
2825:
2822:
2820:
2817:
2815:
2812:
2811:
2809:
2806:
2801:
2797:
2791:
2788:
2784:
2781:
2780:
2779:
2776:
2772:
2769:
2768:
2767:
2764:
2760:
2757:
2756:
2755:
2754:Math formulas
2752:
2748:
2745:
2743:
2740:
2738:
2737:How to create
2735:
2734:
2733:
2730:
2728:
2725:
2724:
2722:
2718:
2712:
2709:
2707:
2704:
2700:
2697:
2695:
2692:
2690:
2687:
2686:
2685:
2682:
2680:
2677:
2673:
2670:
2668:
2665:
2663:
2660:
2658:
2655:
2653:
2650:
2648:
2645:
2643:
2640:
2639:
2638:
2635:
2631:
2628:
2626:
2623:
2622:
2621:
2618:
2616:
2613:
2612:
2610:
2605:
2601:
2595:
2592:
2590:
2587:
2585:
2582:
2580:
2577:
2573:
2570:
2568:
2565:
2563:
2560:
2559:
2558:
2555:
2551:
2548:
2546:
2543:
2541:
2540:Interlanguage
2538:
2537:
2536:
2533:
2532:
2530:
2528:
2524:
2520:
2514:
2513:Using colours
2511:
2507:
2504:
2502:
2499:
2497:
2494:
2492:
2489:
2487:
2484:
2482:
2479:
2478:
2477:
2474:
2472:
2469:
2467:
2464:
2460:
2459:Time function
2457:
2455:
2452:
2450:
2447:
2445:
2444:For beginners
2442:
2441:
2440:
2437:
2435:
2432:
2430:
2427:
2425:
2422:
2418:
2415:
2414:
2413:
2410:
2409:
2407:
2405:
2401:
2395:
2392:
2390:
2387:
2385:
2382:
2380:
2377:
2373:
2370:
2369:
2368:
2365:
2363:
2360:
2358:
2355:
2353:
2350:
2348:
2345:
2343:
2340:
2338:
2337:Page Curation
2335:
2331:
2328:
2327:
2326:
2323:
2319:
2316:
2314:
2311:
2310:
2309:
2308:Moving a page
2306:
2304:
2301:
2297:
2294:
2293:
2292:
2289:
2287:
2284:
2282:
2279:
2277:
2274:
2272:
2269:
2268:
2266:
2263:
2257:
2249:
2246:
2245:
2244:
2241:
2239:
2236:
2232:
2229:
2228:
2227:
2224:
2220:
2217:
2216:
2215:
2212:
2210:
2207:
2203:
2200:
2199:
2198:
2195:
2193:
2190:
2188:
2185:
2183:
2180:
2178:
2177:Mobile access
2175:
2171:
2168:
2167:
2166:
2163:
2161:
2158:
2154:
2151:
2149:
2146:
2144:
2143:Edit conflict
2141:
2139:
2136:
2135:
2134:
2131:
2127:
2124:
2122:
2119:
2118:
2117:
2116:Browser notes
2114:
2113:
2111:
2109:
2103:
2099:
2097:
2093:
2089:
2085:
2081:
2074:
2070:
2063:
2058:
2056:
2051:
2049:
2044:
2043:
2040:
2033:
2029:
2026:
2023:
2019:
2015:
2014:
2010:
2005:
2002:
1999:
1996:
1993:
1990:
1989:
1988:
1986:
1983:based on the
1982:
1978:
1971:
1967:
1964:
1963:
1959:
1954:
1950:
1946:
1943:
1942:
1938:
1933:
1930:
1927:
1924:
1921:
1917:
1914:
1912:
1908:
1905:
1904:
1903:
1898:
1895:
1890:
1886:
1882:
1879:
1876:
1872:
1868:
1865:
1862:
1858:
1854:
1850:
1847:
1846:
1845:
1839:
1834:
1831:
1828:
1825:
1822:
1819:
1816:
1813:
1812:
1811:
1806:
1803:
1798:
1794:
1790:
1787:
1784:
1780:
1777:
1774:
1770:
1767:
1766:
1765:
1762:
1760:
1756:
1752:
1748:
1744:
1740:
1736:
1732:
1728:
1724:
1720:
1716:
1712:
1708:
1704:
1697:
1692:
1689:
1688:
1684:
1679:
1676:
1674:
1670:
1667:
1665:
1661:
1658:
1655:
1651:
1647:
1644:
1641:
1638:
1635:
1632:
1631:
1630:
1625:
1622:
1612:
1609:
1603:
1600:
1591:
1587:
1583:
1581:
1578:
1575:
1572:
1569:
1566:
1563:
1560:
1557:
1555:
1552:
1550:
1545:
1542:
1541:
1537:
1535:
1532:
1529:
1526:
1523:
1520:
1517:
1514:
1509:
1507:
1504:
1502:
1498:
1494:
1491:
1490:
1486:
1481:RevisionSaver
1458:
1456:
1453:
1450:
1447:
1444:
1441:
1438:
1435:
1432:
1430:
1429:mediawiki-api
1427:
1425:
1422:
1421:
1417:
1415:
1412:
1409:
1406:
1403:
1400:
1397:
1394:
1391:
1389:
1386:
1384:
1381:
1380:
1376:
1372:
1370:
1367:
1364:
1361:
1358:
1355:
1352:
1349:
1346:
1344:
1341:
1339:
1335:
1331:
1330:Cyberpower678
1328:
1327:
1323:
1320:
1317:
1314:
1312:
1309:
1306:
1303:
1300:
1297:
1294:
1291:
1290:
1286:
1280:
1278:
1273:
1270:
1263:
1258:
1255:
1252:
1249:
1248:
1247:
1244:
1242:
1234:
1230:
1226:
1222:
1220:
1216:
1215:
1214:
1212:
1205:
1203:
1198:
1194:
1186:
1184:
1182:
1178:
1174:
1170:
1166:
1162:
1156:
1153:
1147:
1144:
1140:
1136:
1133:
1130:
1129:
1128:
1122:
1120:
1118:
1110:
1108:
1102:
1096:
1092:
1088:
1080:
1078:
1076:
1072:
1064:
1062:
1059:
1053:meta=userinfo
1045:
1043:
1036:
1031:
1026:
1023:
1019:
1016:
1012:
1009:
1006:
1002:
998:
993:
992:
990:
987:
983:
978:
977:
975:
971:
968:
964:
961:Set a custom
960:
959:
955:
953:
947:
945:
943:
938:
935:
928:
926:
924:
916:
914:
912:
907:
900:Documentation
899:
897:
895:
891:
883:
878:
875:
872:
868:
864:
863:
862:
860:
853:
848:
843:
839:
835:
834:
830:
823:
820:
817:
816:
814:
810:
809:Specification
807:
806:
803:Specification
802:
797:
793:
790:
786:
785:
781:
775:
771:
769:
761:
759:
757:
751:
749:
744:basetimestamp
736:
727:
718:
716:
708:
706:
704:
700:
696:
691:
689:
681:
669:
664:
663:
661:
657:
654:
653:
652:
649:
645:
639:
636:
635:
634:
631:
623:
621:
619:
614:
612:
608:
604:
600:
596:
592:
587:
579:lgtoken=TOKEN
577:
572:
567:
566:
564:
561:
556:
555:
554:
553:
546:
541:
540:
539:
538:
534:
532:
531:MediaWiki API
527:
525:
521:
516:
509:
507:
505:
495:
492:
491:
480:
467:
462:
459:
458:
456:
452:
449:
444:
440:
437:
434:
433:
431:
427:
423:
417:
416:MediaWiki API
414:
413:
412:
410:
403:APIs for bots
402:
400:
396:
392:
385:
378:
373:
368:
365:
361:
358:
355:
352:
349:
348:
347:
340:
338:
336:
332:
328:
323:
315:
308:
302:
297:
292:
288:
287:
284:
282:
278:
274:
265:
260:
258:
256:
248:
246:
243:
242:
237:
224:
220:
217:
213:
210:
206:
205:
202:
197:
192:
188:
184:
181:, nor one of
180:
177:It is not an
174:
172:
166:
159:
158:
143:
138:
135:
133:
130:
126:
125:Status report
123:
121:
118:
117:
116:
113:
111:
108:
103:
97:
93:
90:
89:
88:
85:
83:
80:
79:
74:
73:
69:
67:
66:
62:
58:
57:
53:
52:
51:
50:
46:
44:
43:
39:
35:
34:
30:
29:
28:
27:
23:
22:
20:
18:
17:
3381:User scripts
3329:
3322:
3251:
3152:User scripts
2928:Main/Article
2888:Transclusion
2871:Substitution
2759:Math symbols
2727:Family trees
2481:Introduction
2352:Random pages
2243:VisualEditor
2187:Page history
2148:Edit toolbar
2121:Bypass cache
2080:the Teahouse
2077:
1985:Visual Basic
1975:
1945:CL-MediaWiki
1901:
1843:
1809:
1793:see on nuget
1763:
1735:Mono Project
1723:JScript .NET
1701:
1628:
1611:
1602:
1301:Last release
1274:
1267:
1245:
1238:
1209:
1200:
1157:
1154:
1151:
1126:
1114:
1098:
1084:
1070:
1068:
1049:
1040:
1020:Make use of
951:
939:
932:
920:
903:
887:
857:
842:Architecture
837:
836:Think about
765:
756:edit warring
752:
725:
719:
714:
712:
698:
694:
692:
684:
675:
666:action=query
655:
650:
646:
643:
637:
627:
615:
606:
602:
598:
595:enwikiUserID
594:
591:HTTP cookies
588:
585:
551:
550:
536:
535:
528:
517:
513:
501:
493:
460:
435:
428:format (see
406:
397:
393:
389:
344:
319:
300:
269:
252:
239:
235:
234:
216:WP:CREATEBOT
168:
115:List of bots
109:
82:Bot Requests
70:
63:
54:
47:
40:
31:
24:
3364:Referencing
3289:Ultraviolet
3147:IRC Scripts
3110:Preferences
2854:Lua project
2679:Gallery tag
2579:Colon trick
2439:Magic words
2342:Page import
2281:Edit filter
1949:Common Lisp
1939:Common Lisp
1902:Libraries:
1844:Libraries:
1810:Libraries:
1764:Libraries:
1678:pymediawiki
1629:Libraries:
1473:PageDeleter
1287:frameworks
1246:Libraries:
1225:User:GreenC
1005:compression
934:Maintaining
929:Maintenance
906:documenting
671:meta=tokens
630:edit tokens
599:enwikiToken
443:API sandbox
169:This is an
65:Noticeboard
3396:Categories
3337:Help pages
3321:See also:
3237:AntiVandal
3174:User style
3167:Techniques
3140:Hide pages
2923:Namespaces
2615:Media help
2589:Pipe trick
2584:Link color
2496:Collapsing
2417:Cheatsheet
2372:Linksearch
2291:Logging in
2219:Editnotice
2138:CharInsert
2092:talk pages
2018:Jim Carter
1911:evaluation
1853:TypeScript
1727:IronPython
1673:The Earwig
1501:Waldyrious
1469:UserGetter
1451:extra libs
1410:extra libs
1377:for help.
1321:Repository
1292:Key people
1219:BotWikiAwk
1191:See also:
963:User-Agent
871:sockpuppet
510:Logging in
470:action=raw
72:Newsletter
42:Bot policy
33:Dictionary
3376:Templates
3298:Inactive
3294:WPCleaner
3103:and tools
3085:Span tags
3006:MediaWiki
2975:Archiving
2881:Job queue
2859:Resources
2814:Templates
2800:Templates
2742:Barcharts
2550:Permanent
2545:Interwiki
2466:Redirects
2389:Watchlist
2367:Searching
2197:Page name
2153:Reverting
2084:help desk
1827:WPCleaner
1821:wiki-java
1654:downloads
1646:wikitools
1634:Pywikibot
1512:7.x, 8.x
1493:Nzhamstar
1338:Jarry1250
1173:Mercurial
1065:Signature
1022:assertion
890:pywikibot
703:assertion
678:csrftoken
520:HTTP POST
364:Toolforge
327:Pywikibot
201:Shortcuts
187:consensus
102:BAG Tools
92:Adminbots
3354:Accounts
3252:Creating
2989:Template
2933:Category
2849:Lua help
2778:Timeline
2672:SVG help
2412:Wikitext
2404:Wikitext
2276:AllPages
2264:-related
2231:Entering
2209:Printing
2170:Tutorial
1977:VBScript
1972:VBScript
1733:. Using
1660:mwclient
1650:Mr.Z-man
1640:ceterach
1510:5.3-5.6,
1506:Wikimate
1424:Addshore
1383:Addshore
1334:Addshore
1307:Uses API
1283:Current
1163:such as
1100:bot=True
1081:Bot Flag
984:Use the
972:Use the
942:approved
524:HTTP GET
255:template
223:WP:MKBOT
26:Overview
3284:Twinkle
3279:RedWarn
3257:history
3115:Gadgets
3028:Special
2807:modules
2424:Columns
2260:Special
2133:Editing
2106:General
1960:Haskell
1881:wikiapi
1840:Node.js
1759:Windows
1751:Solaris
1711:C++/CLI
1691:MatWiki
1586:ClueBot
1580:on wiki
1549:wbm1058
1544:Chris G
1318:Plugins
1285:PHP bot
1211:GNU Awk
1058:example
1055:query (
999:Enable
884:Testing
735:example
494:Status:
461:Status:
436:Status:
421:api.php
307:Toolhub
191:vetting
132:History
3269:Huggle
3264:HotCat
3023:Module
2980:Simple
2960:Portal
2637:Images
2486:Basics
2476:Tables
2028:mwtest
2022:Dfavro
1889:GitHub
1875:GitHub
1861:GitHub
1855:. See
1729:, and
1685:MATLAB
1624:Python
1590:SoxBot
1534:GitHub
1455:GitHub
1414:GitHub
1369:GitHub
1347:5.2.1
1343:Peachy
1324:Notes
1229:GitHub
726:before
605:. The
601:, and
472:or an
331:Python
236:Robots
209:WP:CAB
3307:STiki
3302:igloo
3179:Tools
3157:Guide
3120:Skins
2938:Draft
2876:Purge
2864:To do
2620:Files
2604:Media
2557:Diffs
2535:Links
2527:diffs
2523:Links
2434:Lists
1979:is a
1833:jwiki
1755:macOS
1739:Linux
1664:Bryan
1497:Xymph
1171:, or
557:URL:
542:URL:
335:below
137:Types
56:Guide
3359:Bots
3247:Bots
3162:List
3040:and
3038:HTML
2994:User
2970:Talk
2955:Help
2943:File
2594:URLs
2525:and
2379:Tags
2303:Logs
2262:page
2248:Help
2202:Help
2020:and
1953:JSON
1897:Ruby
1805:Java
1797:docs
1753:and
1743:Unix
1588:and
1564:2024
1558:8.2
1518:2024
1515:2023
1448:some
1439:2022
1436:2021
1433:7.4
1398:2022
1395:2021
1392:7.4
1353:2022
1350:2013
1295:Name
1275:The
1235:Perl
1195:and
1179:and
1071:only
1003:and
867:here
782:Idea
742:and
715:will
701:use
699:must
695:i.e.
504:GZIP
426:JSON
305:Use
241:bots
189:and
3042:CSS
2805:Lua
2802:and
2330:FAQ
2165:IRC
2096:IRC
2094:or
2011:Lua
1887:on
1873:on
1859:on
1857:mwn
1849:mwn
1783:AWB
1773:API
1747:BSD
1573:Yes
1570:Yes
1567:Yes
1561:n/a
1521:Yes
1442:Yes
1407:N/A
1404:N/A
1401:Yes
1365:Yes
1362:Yes
1359:Yes
1356:Yes
1269:PHP
1264:PHP
1227:at
1206:Awk
1169:Git
1165:SVN
1077:).
986:API
838:how
662:).
486:or
301:Tip
238:or
3398::
2090:,
2086:,
2082:,
1799:).
1795:,
1761:.
1749:,
1745:,
1741:,
1725:,
1721:,
1719:J#
1717:,
1713:,
1709:,
1707:C#
1576:No
1530:No
1527:No
1524:No
1499:,
1495:,
1487:.
1479:,
1475:,
1471:,
1467:,
1445:No
1336:,
1332:,
1167:,
1107:.
944:.
925:.
758:.
750:.
620:.
597:,
105:}}
99:{{
2098:.
2061:e
2054:t
2047:v
1891:.
1877:.
1863:.
1656:)
1652:(
1546:,
1145:.
1017:.
849:.
798:.
791:.
418:(
366:?
193:.
173:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.