CINXE.COM

Help:Creating a bot - Wikipedia

<!doctype html> <html class="client-nojs skin-theme-clientpref-day mf-expand-sections-clientpref-0 mf-font-size-clientpref-small mw-mf-amc-clientpref-0" lang="en" dir="ltr"> <head> <base href="https://en.m.wikipedia.org/wiki/Help:Creating_a_bot"> <meta charset="UTF-8"> <title>Help:Creating a bot - Wikipedia</title> <script>(function(){var className="client-js skin-theme-clientpref-day mf-expand-sections-clientpref-0 mf-font-size-clientpref-small mw-mf-amc-clientpref-0";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"9509bf47-75a4-47a5-aed2-8f5ca431b4cf","wgCanonicalNamespace":"Help","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":12,"wgPageName":"Help:Creating_a_bot","wgTitle":"Creating a bot","wgCurRevisionId":1258430277,"wgRevisionId":1258430277,"wgArticleId": 8354786,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Help:Creating_a_bot","wgRelevantArticleId":8354786,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":["sysop"],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFMode":"stable","wgMFAmc":false,"wgMFAmcOutreachActive":false,"wgMFAmcOutreachUserEligible":false,"wgMFLazyLoadImages":true,"wgMFEditNoticesFeatureConflict":false,"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgMFIsSupportedEditRequest":true, "wgMFScriptPath":"","wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":30000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":true,"wgEditSubmitButtonLabelPublish":true,"wgDiscussionToolsFeaturesEnabled":{"replytool":true,"newtopictool":true,"sourcemodetoolbar":true,"topicsubscription":false,"autotopicsub":false,"visualenhancements":false,"visualenhancements_reply":false,"visualenhancements_pageframe":false},"wgDiscussionToolsFallbackEditMode":"source","wgSectionTranslationTargetLanguages":["ace","ady","alt","am","ami","an","ang","ann","anp","ar","ary","arz","as","ast","av","avk","awa","ay","az","azb","ba","ban","bar","bbc","bcl","bdr","be","bew","bg","bho","bi","bjn","blk","bm","bn","bo","bpy","br","bs","btm","bug","ca","cdo","ce","ceb","ch","chr","ckb","co","cr","crh","cs","cu","cy","da","dag","de","dga","din","diq","dsb","dtp","dv","dz","ee","el","eml","eo","es","et","eu","fa","fat","ff","fi","fj","fo","fon","fr","frp","frr","fur","fy","gag","gan","gcr","gl", "glk","gn","gom","gor","gpe","gu","guc","gur","guw","gv","ha","hak","haw","he","hi","hif","hr","hsb","ht","hu","hy","hyw","ia","iba","ie","ig","igl","ilo","io","is","it","iu","ja","jam","jv","ka","kaa","kab","kbd","kbp","kcg","kg","kge","ki","kk","kl","km","kn","ko","koi","krc","ks","ku","kus","kv","kw","ky","lad","lb","lez","lg","li","lij","lld","lmo","ln","lo","lt","ltg","lv","mad","mai","map-bms","mdf","mg","mhr","mi","min","mk","ml","mn","mni","mnw","mos","mr","mrj","ms","mt","mwl","my","myv","mzn","nah","nan","nap","nb","nds","nds-nl","ne","new","nia","nl","nn","nqo","nr","nso","ny","oc","om","or","os","pa","pag","pam","pap","pcd","pcm","pdc","pl","pms","pnb","ps","pt","pwn","qu","rm","rn","ro","rsk","rue","rup","rw","sa","sah","sat","sc","scn","sco","sd","se","sg","sgs","sh","shi","shn","si","sk","skr","sl","sm","smn","sn","so","sq","sr","srn","ss","st","stq","su","sv","sw","szl","ta","tay","tcy","tdd","te","tet","tg","th","ti","tk","tl","tly","tn","to","tpi","tr","trv","ts","tt" ,"tum","tw","ty","tyv","udm","ur","uz","ve","vec","vep","vi","vls","vo","vro","wa","war","wo","wuu","xal","xh","xmf","yi","yo","yue","za","zgh","zh","zu"],"isLanguageSearcherCXEntrypointEnabled":false,"mintEntrypointLanguages":["ace","ast","azb","bcl","bjn","bh","crh","ff","fon","ig","is","ki","ks","lmo","min","sat","ss","tn","vec"],"wgWikibaseItemId":"Q9384748","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false,"wgMinervaPermissions":{"watchable":true,"watch":false},"wgMinervaFeatures":{"beta":false,"donate":true,"mobileOptionsLink":true,"categories":false,"pageIssues":true,"talkAtTop":true,"historyInPageActions":false,"overflowSubmenu":false,"tabsOnSpecials":true,"personalMenu":false,"mainMenuExpanded":false,"echo":true, "nightMode":true},"wgMinervaDownloadNamespaces":[0]};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.pygments":"ready","ext.cite.styles":"ready","ext.discussionTools.init.styles":"ready","oojs-ui-core.styles":"ready","oojs-ui.styles.indicators":"ready","mediawiki.widgets.styles":"ready","oojs-ui-core.icons":"ready","skins.minerva.styles":"ready","skins.minerva.content.styles.images":"ready","mediawiki.hlist":"ready","skins.minerva.codex.styles":"ready","skins.minerva.icons":"ready","jquery.tablesorter.styles":"ready","skins.minerva.amc.styles":"ready","ext.wikimediamessages.styles":"ready","mobile.init.styles":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.pygments.view","ext.cite.ux-enhancements","mediawiki.page.media","site","mediawiki.page.ready","jquery.tablesorter","skins.minerva.scripts","ext.centralNotice.geoIP", "ext.centralNotice.startUp","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","ext.popups","mobile.init","ext.echo.centralauth","ext.discussionTools.init","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.cx.eventlogging.campaigns","ext.cx.entrypoints.languagesearcher.init","mw.externalguidance.init","ext.checkUser.clientHints","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=ext.cite.styles%7Cext.discussionTools.init.styles%7Cext.pygments%2CwikimediaBadges%7Cext.wikimediamessages.styles%7Cjquery.tablesorter.styles%7Cmediawiki.hlist%7Cmediawiki.widgets.styles%7Cmobile.init.styles%7Coojs-ui-core.icons%2Cstyles%7Coojs-ui.styles.indicators%7Cskins.minerva.amc.styles%7Cskins.minerva.codex.styles%7Cskins.minerva.content.styles.images%7Cskins.minerva.icons%2Cstyles%7Cwikibase.client.init&amp;only=styles&amp;skin=minerva"> <script async src="/w/load.php?lang=en&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=minerva"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&amp;modules=site.styles&amp;only=styles&amp;skin=minerva"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="theme-color" content="#eaecf0"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes, minimum-scale=0.25, maximum-scale=5.0"> <meta property="og:title" content="Help:Creating a bot - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="manifest" href="/w/api.php?action=webapp-manifest"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=Help:Creating_a_bot&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/Help:Creating_a_bot"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="dns-prefetch" href="//meta.wikimedia.org"> <link rel="dns-prefetch" href="//login.wikimedia.org"> <meta http-equiv="X-Translated-By" content="Google"> <meta http-equiv="X-Translated-To" content="en"> <script type="text/javascript" src="https://www.gstatic.com/_/translate_http/_/js/k=translate_http.tr.en_GB.1hbgkFx4Qn8.O/am=DgY/d=1/rs=AN8SPfqlmAPxwfG457BPbRXwNq39oSMGHg/m=corsproxy" data-sourceurl="https://en.m.wikipedia.org/wiki/Help:Creating_a_bot"></script> <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" rel="stylesheet"> <script type="text/javascript" src="https://www.gstatic.com/_/translate_http/_/js/k=translate_http.tr.en_GB.1hbgkFx4Qn8.O/am=DgY/d=1/exm=corsproxy/ed=1/rs=AN8SPfqlmAPxwfG457BPbRXwNq39oSMGHg/m=phishing_protection" data-phishing-protection-enabled="false" data-forms-warning-enabled="true" data-source-url="https://en.m.wikipedia.org/wiki/Help:Creating_a_bot"></script> <meta name="robots" content="none"> </head> <body class="ext-discussiontools-replytool-enabled ext-discussiontools-newtopictool-enabled ext-discussiontools-sourcemodetoolbar-enabled mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-12 ns-subject mw-editable page-Help_Creating_a_bot rootpage-Help_Creating_a_bot stable skin-minerva action-view skin--responsive mw-mf-amc-disabled mw-mf"> <script type="text/javascript" src="https://www.gstatic.com/_/translate_http/_/js/k=translate_http.tr.en_GB.1hbgkFx4Qn8.O/am=DgY/d=1/exm=corsproxy,phishing_protection/ed=1/rs=AN8SPfqlmAPxwfG457BPbRXwNq39oSMGHg/m=navigationui" data-environment="prod" data-proxy-url="https://en-m-wikipedia-org.translate.goog" data-proxy-full-url="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-source-url="https://en.m.wikipedia.org/wiki/Help:Creating_a_bot" data-source-language="auto" data-target-language="en" data-display-language="en-GB" data-detected-source-language="en" data-is-source-untranslated="false" data-source-untranslated-url="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.m.wikipedia.org/wiki/Help:Creating_a_bot&amp;anno=2" data-client="tr"></script> <div id="mw-mf-viewport"> <div id="mw-mf-page-center"><a class="mw-mf-page-center__mask" href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#"></a> <header class="header-container header-chrome"> <div class="minerva-header"> <nav class="navigation-drawer toggle-list view-border-box"><input type="checkbox" id="main-menu-input" class="toggle-list__checkbox" role="button" aria-haspopup="true" aria-expanded="false" aria-labelledby="mw-mf-main-menu-button"> <label role="button" for="main-menu-input" id="mw-mf-main-menu-button" aria-hidden="true" data-event-name="ui.mainmenu" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet toggle-list__toggle"> <span class="minerva-icon minerva-icon--menu"></span> <span></span> </label> <div id="mw-mf-page-left" class="menu view-border-box"> <ul id="p-navigation" class="toggle-list__list"> <li class="toggle-list-item "><a class="toggle-list-item__anchor menu__item--home" href="https://en-m-wikipedia-org.translate.goog/wiki/Main_Page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-mw="interface"> <span class="minerva-icon minerva-icon--home"></span> <span class="toggle-list-item__label">Home</span> </a></li> <li class="toggle-list-item "><a class="toggle-list-item__anchor menu__item--random" href="https://en-m-wikipedia-org.translate.goog/wiki/Special:Random?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-mw="interface"> <span class="minerva-icon minerva-icon--die"></span> <span class="toggle-list-item__label">Random</span> </a></li> <li class="toggle-list-item skin-minerva-list-item-jsonly"><a class="toggle-list-item__anchor menu__item--nearby" href="https://en-m-wikipedia-org.translate.goog/wiki/Special:Nearby?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-event-name="menu.nearby" data-mw="interface"> <span class="minerva-icon minerva-icon--mapPin"></span> <span class="toggle-list-item__label">Nearby</span> </a></li> </ul> <ul id="p-personal" class="toggle-list__list"> <li class="toggle-list-item "><a class="toggle-list-item__anchor menu__item--login" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Special:UserLogin&amp;returnto=Help:Creating+a+bot&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-event-name="menu.login" data-mw="interface"> <span class="minerva-icon minerva-icon--logIn"></span> <span class="toggle-list-item__label">Log in</span> </a></li> </ul> <ul id="pt-preferences" class="toggle-list__list"> <li class="toggle-list-item skin-minerva-list-item-jsonly"><a class="toggle-list-item__anchor menu__item--settings" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Special:MobileOptions&amp;returnto=Help:Creating+a+bot&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-event-name="menu.settings" data-mw="interface"> <span class="minerva-icon minerva-icon--settings"></span> <span class="toggle-list-item__label">Settings</span> </a></li> </ul> <ul id="p-donation" class="toggle-list__list"> <li class="toggle-list-item "><a class="toggle-list-item__anchor menu__item--donate" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source%3Ddonate%26utm_medium%3Dsidebar%26utm_campaign%3DC13_en.wikipedia.org%26uselang%3Den%26utm_key%3Dminerva" data-event-name="menu.donate" data-mw="interface"> <span class="minerva-icon minerva-icon--heart"></span> <span class="toggle-list-item__label">Donate</span> </a></li> </ul> <ul class="hlist"> <li class="toggle-list-item "><a class="toggle-list-item__anchor menu__item--about" href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:About?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-mw="interface"> <span class="toggle-list-item__label">About Wikipedia</span> </a></li> <li class="toggle-list-item "><a class="toggle-list-item__anchor menu__item--disclaimers" href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:General_disclaimer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-mw="interface"> <span class="toggle-list-item__label">Disclaimers</span> </a></li> </ul> </div><label class="main-menu-mask" for="main-menu-input"></label> </nav> <div class="branding-box"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Main_Page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB"> <span><img src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" alt="Wikipedia" width="120" height="18" style="width: 7.5em; height: 1.125em;"> </span> </a> </div> <form action="/w/index.php" method="get" class="minerva-search-form"> <div class="search-box"><input type="hidden" name="title" value="Special:Search"> <input class="search skin-minerva-search-trigger" id="searchInput" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f"> <span class="search-box-icon-overlay"><span class="minerva-icon minerva-icon--search"></span> </span> </div><button id="searchIcon" class="cdx-button cdx-button--size-large cdx-button--icon-only cdx-button--weight-quiet skin-minerva-search-trigger"> <span class="minerva-icon minerva-icon--search"></span> <span>Search</span> </button> </form> <nav class="minerva-user-navigation" aria-label="User navigation"> </nav> </div> </header> <main id="content" class="mw-body"> <div class="banner-container"> <div id="siteNotice"></div> </div> <div class="pre-content heading-holder"> <div class="page-heading"> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-namespace">Help</span><span class="mw-page-title-separator">:</span><span class="mw-page-title-main">Creating a bot</span></h1> <div class="tagline"></div> </div> <ul id="p-associated-pages" class="minerva__tab-container"> <li class="minerva__tab selected"><a class="minerva__tab-text" href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" rel="" data-event-name="tabs.subject">Help page</a></li> <li class="minerva__tab "><a class="minerva__tab-text" href="https://en-m-wikipedia-org.translate.goog/wiki/Help_talk:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" rel="" data-event-name="tabs.talk">Talk</a></li> </ul> <nav class="page-actions-menu"> <ul id="p-views" class="page-actions-menu__list"> <li id="language-selector" class="page-actions-menu__list-item"><a role="button" href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#p-lang" data-mw="interface" data-event-name="menu.languages" title="Language" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet language-selector"> <span class="minerva-icon minerva-icon--language"></span> <span>Language</span> </a></li> <li id="page-actions-watch" class="page-actions-menu__list-item"><a role="button" id="ca-watch" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Special:UserLogin&amp;returnto=Help:Creating+a+bot&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-event-name="menu.watch" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet menu__item--page-actions-watch"> <span class="minerva-icon minerva-icon--star"></span> <span>Watch</span> </a></li> <li id="page-actions-edit" class="page-actions-menu__list-item"><a role="button" id="ca-edit" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" data-event-name="menu.edit" data-mw="interface" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet edit-page menu__item--page-actions-edit"> <span class="minerva-icon minerva-icon--edit"></span> <span>Edit</span> </a></li> </ul> </nav><!-- version 1.0.2 (change every time you update a partial) --> <div id="mw-content-subtitle"></div> </div> <div id="bodyContent" class="content"> <div id="mw-content-text" class="mw-body-content"> <script>function mfTempOpenSection(id){var block=document.getElementById("mf-section-"+id);block.className+=" open-block";block.previousSibling.className+=" open-block";}</script> <div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"> <section class="mf-section-0" id="mf-section-0"> <style data-mw-deduplicate="TemplateStyles:r1238436933">.mw-parser-output .ombox{margin:4px 0;border-collapse:collapse;border:1px solid #a2a9b1;background-color:var(--background-color-neutral-subtle,#f8f9fa);box-sizing:border-box;color:var(--color-base,#202122)}.mw-parser-output .ombox.mbox-small{font-size:88%;line-height:1.25em}.mw-parser-output .ombox-speedy{border:2px solid #b32424;background-color:#fee7e6}.mw-parser-output .ombox-delete{border:2px solid #b32424}.mw-parser-output .ombox-content{border:1px solid #f28500}.mw-parser-output .ombox-style{border:1px solid #fc3}.mw-parser-output .ombox-move{border:1px solid #9932cc}.mw-parser-output .ombox-protection{border:2px solid #a2a9b1}.mw-parser-output .ombox .mbox-text{border:none;padding:0.25em 0.9em;width:100%}.mw-parser-output .ombox .mbox-image{border:none;padding:2px 0 2px 0.9em;text-align:center}.mw-parser-output .ombox .mbox-imageright{border:none;padding:2px 0.9em 2px 0;text-align:center}.mw-parser-output .ombox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ombox .mbox-invalid-type{text-align:center}@media(min-width:720px){.mw-parser-output .ombox{margin:4px 10%}.mw-parser-output .ombox.mbox-small{clear:right;float:right;margin:4px 0 4px 1em;width:238px}}body.skin--responsive .mw-parser-output table.ombox img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .ombox-speedy{background-color:#310402}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .ombox-speedy{background-color:#310402}}</style> <table class="plainlinks ombox ombox-notice noprint" role="presentation"> <tbody> <tr> <td class="mbox-empty-cell"></td> <td class="mbox-text" style="text-align:center; margin:1em 0em;"><style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style> <div class="hlist"> <ul> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots">Overview</a></b> <ul> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots/Dictionary?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots/Dictionary">Dictionary</a></b></li> </ul></li> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_policy?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot policy">Bot policy</a></b></li> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_Approvals_Group?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot Approvals Group">Bot Approvals Group</a></b> <ul> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_Approvals_Group/Guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot Approvals Group/Guide">Guide</a></b></li> </ul></li> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots/Noticeboard?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots/Noticeboard">Noticeboard</a></b></li> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots/News?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots/News">Newsletter</a></b></li> </ul> </div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"> <div class="hlist"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_requests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot requests">Bot Requests</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots/Requests_for_approval?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots/Requests for approval">Requests for Approval</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots/Requests_for_approval/Adminbots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots/Requests for approval/Adminbots">Adminbots</a></li> </ul></li> <li><span class="nowrap">{{</span><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:BAG_Tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:BAG Tools">BAG Tools</a><span class="nowrap">}}</span></li> <li><a class="mw-selflink selflink">Creating a Bot</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:ListUsers/bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:ListUsers/bot">List of bots</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_activity_monitor?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot activity monitor">Activity monitor</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:MajavahBot/Bot_status_report?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:MajavahBot/Bot status report">Status report</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:History_of_Wikipedia_bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:History of Wikipedia bots">History</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Types_of_bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Types of bots">Types</a></li> </ul> </div></td> <td class="mbox-imageright"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/3/35/Crystal_Clear_action_run.svg/35px-Crystal_Clear_action_run.svg.png" decoding="async" width="35" height="32" class="mw-file-element" srcset="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Crystal_Clear_action_run.svg/53px-Crystal_Clear_action_run.svg.png 1.5x,https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Crystal_Clear_action_run.svg/70px-Crystal_Clear_action_run.svg.png 2x" data-file-width="140" data-file-height="127"></span></span></td> </tr> </tbody> </table> <div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none"> Wikipedia information page </div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238436933"> <table class="plainlinks ombox ombox-notice" role="presentation"> <tbody> <tr> <td class="mbox-image"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/1/1d/Information_icon4.svg/40px-Information_icon4.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://upload.wikimedia.org/wikipedia/en/thumb/1/1d/Information_icon4.svg/60px-Information_icon4.svg.png 1.5x,https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://upload.wikimedia.org/wikipedia/en/thumb/1/1d/Information_icon4.svg/80px-Information_icon4.svg.png 2x" data-file-width="620" data-file-height="620"></span></span></td> <td class="mbox-text"> <div style="padding-top: 6px; padding-bottom: 5px;"> <b>This is an <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Project_namespace?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#How-to_and_information_pages" title="Wikipedia:Project namespace">information page</a>.</b><br> <div style="font-size: 90%;"> It is not an <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:What_is_an_article%3F?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:What is an article?">encyclopedic article</a>, nor one of <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Policies_and_guidelines?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Policies and guidelines">Wikipedia's policies or guidelines</a>; rather, its purpose is to explain certain aspects of Wikipedia's norms, customs, technicalities, or practices. It may reflect differing levels of <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Consensus?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Consensus">consensus</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Consensus?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Achieving_consensus" title="Wikipedia:Consensus">vetting</a>. </div> </div></td> <td class="mbox-imageright"><style data-mw-deduplicate="TemplateStyles:r1252059228">.mw-parser-output .module-shortcutboxplain{float:right;margin:0 0 0 1em;border:1px solid var(--border-color-base,#a2a9b1);background-color:var(--background-color-base,#fff);padding:0.3em 0.6em 0.2em 0.6em;text-align:center;font-size:85%}.mw-parser-output .module-shortcutboxleft{float:left;margin:0 1em 0 0}.mw-parser-output .module-shortcutlist{display:inline-block;border-bottom:1px solid var(--border-color-base,#a2a9b1);margin-bottom:0.2em}.mw-parser-output .module-shortcutboxplain ul{font-weight:bold}.mw-parser-output .module-shortcutanchordiv{position:relative;top:-3em}.mw-parser-output li .module-shortcutanchordiv{float:right}.mw-parser-output .mbox-imageright .module-shortcutboxplain{padding:0.4em 1em 0.4em 1em;line-height:1.3;margin:0}</style> <div class="module-shortcutanchordiv"> <span id="WP:CAB"></span><span id="WP:CREATEBOT"></span><span id="WP:MKBOT"></span> </div> <div class="module-shortcutboxplain noprint" role="note"> <div class="module-shortcutlist"> <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Shortcut?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Shortcut">Shortcuts</a> </div> <style data-mw-deduplicate="TemplateStyles:r1126788409">.mw-parser-output .plainlist ol,.mw-parser-output .plainlist ul{line-height:inherit;list-style:none;margin:0;padding:0}.mw-parser-output .plainlist ol li,.mw-parser-output .plainlist ul li{margin-bottom:0}</style> <div class="plainlist"> <ul> <li><span class="plainlinks"><a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DWikipedia:CAB%26redirect%3Dno">WP:CAB</a></span></li> <li><span class="plainlinks"><a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DWikipedia:CREATEBOT%26redirect%3Dno">WP:CREATEBOT</a></span></li> <li><span class="plainlinks"><a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DWikipedia:MKBOT%26redirect%3Dno">WP:MKBOT</a></span></li> </ul> </div> </div></td> </tr> </tbody> </table> <p><b>Robots</b> or <b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots">bots</a></b> are automatic processes that interact with Wikipedia (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 explanation is geared mainly towards those who have some prior programming experience, but are unsure of how to apply this knowledge to creating a Wikipedia bot.</p> <div id="toc" class="toc" role="navigation" aria-labelledby="mw-toc-heading"> <input type="checkbox" role="button" id="toctogglecheckbox" class="toctogglecheckbox" style="display:none"> <div class="toctitle" lang="en" dir="ltr"> <h2 id="mw-toc-heading">Contents</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span> </div> <ul> <li class="toclevel-1 tocsection-1"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Why_would_I_need_to_create_a_bot?"><span class="tocnumber">1</span> <span class="toctext">Why would I need to create a bot?</span></a></li> <li class="toclevel-1 tocsection-2"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Considerations_before_creating_a_bot"><span class="tocnumber">2</span> <span class="toctext">Considerations before creating a bot</span></a> <ul> <li class="toclevel-2 tocsection-3"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Reuse_existing_bots"><span class="tocnumber">2.1</span> <span class="toctext">Reuse existing bots</span></a></li> <li class="toclevel-2 tocsection-4"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Reuse_codebase"><span class="tocnumber">2.2</span> <span class="toctext">Reuse codebase</span></a></li> <li class="toclevel-2 tocsection-5"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Important_questions"><span class="tocnumber">2.3</span> <span class="toctext">Important questions</span></a></li> </ul></li> <li class="toclevel-1 tocsection-6"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#How_does_a_Wikipedia_bot_work?"><span class="tocnumber">3</span> <span class="toctext">How does a Wikipedia bot work?</span></a> <ul> <li class="toclevel-2 tocsection-7"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Overview_of_operation"><span class="tocnumber">3.1</span> <span class="toctext">Overview of operation</span></a></li> <li class="toclevel-2 tocsection-8"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#APIs_for_bots"><span class="tocnumber">3.2</span> <span class="toctext">APIs for bots</span></a></li> <li class="toclevel-2 tocsection-9"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Logging_in"><span class="tocnumber">3.3</span> <span class="toctext">Logging in</span></a></li> <li class="toclevel-2 tocsection-10"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Editing;_edit_tokens"><span class="tocnumber">3.4</span> <span class="toctext">Editing; edit tokens</span></a></li> <li class="toclevel-2 tocsection-11"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Edit_conflicts"><span class="tocnumber">3.5</span> <span class="toctext">Edit conflicts</span></a></li> </ul></li> <li class="toclevel-1 tocsection-12"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Overview_of_the_process_of_developing_a_bot"><span class="tocnumber">4</span> <span class="toctext">Overview of the process of developing a bot</span></a> <ul> <li class="toclevel-2 tocsection-13"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Idea"><span class="tocnumber">4.1</span> <span class="toctext">Idea</span></a></li> <li class="toclevel-2 tocsection-14"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Specification"><span class="tocnumber">4.2</span> <span class="toctext">Specification</span></a></li> <li class="toclevel-2 tocsection-15"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Software_architecture"><span class="tocnumber">4.3</span> <span class="toctext">Software architecture</span></a></li> <li class="toclevel-2 tocsection-16"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Implementation"><span class="tocnumber">4.4</span> <span class="toctext">Implementation</span></a></li> <li class="toclevel-2 tocsection-17"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Testing"><span class="tocnumber">4.5</span> <span class="toctext">Testing</span></a></li> <li class="toclevel-2 tocsection-18"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Documentation"><span class="tocnumber">4.6</span> <span class="toctext">Documentation</span></a></li> <li class="toclevel-2 tocsection-19"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Queries/Complaints"><span class="tocnumber">4.7</span> <span class="toctext">Queries/Complaints</span></a></li> <li class="toclevel-2 tocsection-20"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Maintenance"><span class="tocnumber">4.8</span> <span class="toctext">Maintenance</span></a></li> </ul></li> <li class="toclevel-1 tocsection-21"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#General_guidelines_for_running_a_bot"><span class="tocnumber">5</span> <span class="toctext">General guidelines for running a bot</span></a> <ul> <li class="toclevel-2 tocsection-22"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Bot_best_practices"><span class="tocnumber">5.1</span> <span class="toctext">Bot best practices</span></a></li> <li class="toclevel-2 tocsection-23"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Common_bot_features_you_should_consider_implementing"><span class="tocnumber">5.2</span> <span class="toctext">Common bot features you should consider implementing</span></a> <ul> <li class="toclevel-3 tocsection-24"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Manual_assistance"><span class="tocnumber">5.2.1</span> <span class="toctext">Manual assistance</span></a></li> <li class="toclevel-3 tocsection-25"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Disabling_the_bot"><span class="tocnumber">5.2.2</span> <span class="toctext">Disabling the bot</span></a></li> <li class="toclevel-3 tocsection-26"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Signature"><span class="tocnumber">5.2.3</span> <span class="toctext">Signature</span></a></li> <li class="toclevel-3 tocsection-27"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Bot_Flag"><span class="tocnumber">5.2.4</span> <span class="toctext">Bot Flag</span></a></li> <li class="toclevel-3 tocsection-28"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Monitoring_the_bot_status"><span class="tocnumber">5.2.5</span> <span class="toctext">Monitoring the bot status</span></a></li> </ul></li> </ul></li> <li class="toclevel-1 tocsection-29"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Open-source_bots"><span class="tocnumber">6</span> <span class="toctext">Open-source bots</span></a></li> <li class="toclevel-1 tocsection-30"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Programming_languages_and_libraries"><span class="tocnumber">7</span> <span class="toctext">Programming languages and libraries</span></a> <ul> <li class="toclevel-2 tocsection-31"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Awk"><span class="tocnumber">7.1</span> <span class="toctext">Awk</span></a></li> <li class="toclevel-2 tocsection-32"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Perl"><span class="tocnumber">7.2</span> <span class="toctext">Perl</span></a></li> <li class="toclevel-2 tocsection-33"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#PHP"><span class="tocnumber">7.3</span> <span class="toctext">PHP</span></a></li> <li class="toclevel-2 tocsection-34"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Python"><span class="tocnumber">7.4</span> <span class="toctext">Python</span></a></li> <li class="toclevel-2 tocsection-35"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#MATLAB"><span class="tocnumber">7.5</span> <span class="toctext">MATLAB</span></a></li> <li class="toclevel-2 tocsection-36"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Microsoft_.NET"><span class="tocnumber">7.6</span> <span class="toctext">Microsoft .NET</span></a></li> <li class="toclevel-2 tocsection-37"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Java"><span class="tocnumber">7.7</span> <span class="toctext">Java</span></a></li> <li class="toclevel-2 tocsection-38"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Node.js"><span class="tocnumber">7.8</span> <span class="toctext">Node.js</span></a></li> <li class="toclevel-2 tocsection-39"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Ruby"><span class="tocnumber">7.9</span> <span class="toctext">Ruby</span></a></li> <li class="toclevel-2 tocsection-40"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Common_Lisp"><span class="tocnumber">7.10</span> <span class="toctext">Common Lisp</span></a></li> <li class="toclevel-2 tocsection-41"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Haskell"><span class="tocnumber">7.11</span> <span class="toctext">Haskell</span></a></li> <li class="toclevel-2 tocsection-42"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#VBScript"><span class="tocnumber">7.12</span> <span class="toctext">VBScript</span></a></li> <li class="toclevel-2 tocsection-43"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Lua"><span class="tocnumber">7.13</span> <span class="toctext">Lua</span></a></li> </ul></li> </ul> </div> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(1)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="Why_would_I_need_to_create_a_bot?" data-mw-thread-id="h-Why_would_I_need_to_create_a_bot?"><span id="Why_would_I_need_to_create_a_bot.3F"></span><span data-mw-comment-start="" id="h-Why_would_I_need_to_create_a_bot?"></span>Why would I need to create a bot?<span data-mw-comment-end="h-Why_would_I_need_to_create_a_bot?"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=1&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Why would I need to create a bot?" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Why_would_I_need_to_create_a_bot?","replies":[]}}--> </div> <section class="mf-section-1 collapsible-block" id="mf-section-1"> <p>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Template_messages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:Template messages">template</a> to all pages in a category with 1000 pages), then this is a task better suited to a bot than a human.</p> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(2)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="Considerations_before_creating_a_bot" data-mw-thread-id="h-Considerations_before_creating_a_bot"><span data-mw-comment-start="" id="h-Considerations_before_creating_a_bot"></span>Considerations before creating a bot<span data-mw-comment-end="h-Considerations_before_creating_a_bot"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=2&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Considerations before creating a bot" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Considerations_before_creating_a_bot","replies":["h-Reuse_existing_bots-Considerations_before_creating_a_bot","h-Reuse_codebase-Considerations_before_creating_a_bot","h-Important_questions-Considerations_before_creating_a_bot"]}}--> </div> <section class="mf-section-2 collapsible-block" id="mf-section-2"> <div class="mw-heading mw-heading3"> <h3 id="Reuse_existing_bots" data-mw-thread-id="h-Reuse_existing_bots-Considerations_before_creating_a_bot"><span data-mw-comment-start="" id="h-Reuse_existing_bots-Considerations_before_creating_a_bot"></span>Reuse existing bots<span data-mw-comment-end="h-Reuse_existing_bots-Considerations_before_creating_a_bot"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=3&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Reuse existing bots" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_requests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot requests">Wikipedia:Bot requests</a>. 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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:AutoWikiBrowser?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:AutoWikiBrowser">AutoWikiBrowser</a> (AWB), a browser specifically designed to assist with editing on Wikipedia and other Wikimedia projects. A mostly complete list of tools can be found at <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Editing_tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Editing tools">Wikipedia:Tools/Editing tools</a>. Tools, such as AWB, can often be operated with little or no understanding of programming.</p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238436933"> <table class="plainlinks ombox ombox-notice" role="presentation"> <tbody> <tr> <td class="mbox-image"> <figure class="mw-halign-right" typeof="mw:File"> <a href="https://en-m-wikipedia-org.translate.goog/wiki/File:Crystal_Clear_app_ktip.svg?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-file-description"> <noscript> <img src="//upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Crystal_Clear_app_ktip.svg/40px-Crystal_Clear_app_ktip.svg.png" decoding="async" width="40" height="40" class="mw-file-element" data-file-width="128" data-file-height="128"> </noscript><span class="lazy-image-placeholder" style="width: 40px;height: 40px;" data-src="//upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Crystal_Clear_app_ktip.svg/40px-Crystal_Clear_app_ktip.svg.png" data-width="40" data-height="40" data-srcset="//upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Crystal_Clear_app_ktip.svg/60px-Crystal_Clear_app_ktip.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Crystal_Clear_app_ktip.svg/80px-Crystal_Clear_app_ktip.svg.png 2x" data-class="mw-file-element">&nbsp;</span></a> <figcaption></figcaption> </figure></td> <td class="mbox-text"> <div> <span style="font-size:110%;"><b>Tip</b></span> </div> Use <a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://toolhub.wikimedia.org/">Toolhub</a> to explore available tools.</td> </tr> </tbody> </table> <div class="mw-heading mw-heading3"> <h3 id="Reuse_codebase" data-mw-thread-id="h-Reuse_codebase-Considerations_before_creating_a_bot"><span data-mw-comment-start="" id="h-Reuse_codebase-Considerations_before_creating_a_bot"></span>Reuse codebase<span data-mw-comment-end="h-Reuse_codebase-Considerations_before_creating_a_bot"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=4&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Reuse codebase" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:BAM?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Current_status_report" class="mw-redirect" title="Wikipedia:BAM">number of bots running on Wikipedia</a> 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 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 <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Pywikibot" class="extiw" title="mw:Manual:Pywikibot">Pywikibot</a> (PWB), a bot framework written in <a href="https://en-m-wikipedia-org.translate.goog/wiki/Python_(programming_language)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Python (programming language)">Python</a>. It is thoroughly documented and tested and many standardized Pywikibot scripts (bot instructions) are already available. Other examples of bot frameworks can be found <a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Programming_languages_and_libraries">below</a>. 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).</p> <div class="mw-heading mw-heading3"> <h3 id="Important_questions" data-mw-thread-id="h-Important_questions-Considerations_before_creating_a_bot"><span data-mw-comment-start="" id="h-Important_questions-Considerations_before_creating_a_bot"></span>Important questions<span data-mw-comment-end="h-Important_questions-Considerations_before_creating_a_bot"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=5&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Important questions" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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:</p> <ul> <li>Will the bot be manually assisted or fully automated?</li> <li>Will you create the bot alone, or with the help of other programmers?</li> <li>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?</li> <li>Will the bot run inside a web browser (for example, written in JavaScript), or will it be a standalone program?</li> <li>If the bot is a standalone program, will it run on your local computer, or on a remote server such as the <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://wikitech.wikimedia.org/wiki/Portal:Toolforge" class="extiw" title="wikitech:Portal:Toolforge">Toolforge</a>?</li> <li>If the bot runs on a remote server, will other editors be able to operate the bot or start it running?</li> </ul> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(3)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="How_does_a_Wikipedia_bot_work?" data-mw-thread-id="h-How_does_a_Wikipedia_bot_work?"><span id="How_does_a_Wikipedia_bot_work.3F"></span><span data-mw-comment-start="" id="h-How_does_a_Wikipedia_bot_work?"></span>How does a Wikipedia bot work?<span data-mw-comment-end="h-How_does_a_Wikipedia_bot_work?"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=6&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: How does a Wikipedia bot work?" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-How_does_a_Wikipedia_bot_work?","replies":["h-Overview_of_operation-How_does_a_Wikipedia_bot_work?","h-APIs_for_bots-How_does_a_Wikipedia_bot_work?","h-Logging_in-How_does_a_Wikipedia_bot_work?","h-Editing;_edit_tokens-How_does_a_Wikipedia_bot_work?","h-Edit_conflicts-How_does_a_Wikipedia_bot_work?"]}}--> </div> <section class="mf-section-3 collapsible-block" id="mf-section-3"> <div class="mw-heading mw-heading3"> <h3 id="Overview_of_operation" data-mw-thread-id="h-Overview_of_operation-How_does_a_Wikipedia_bot_work?"><span data-mw-comment-start="" id="h-Overview_of_operation-How_does_a_Wikipedia_bot_work?"></span>Overview of operation<span data-mw-comment-end="h-Overview_of_operation-How_does_a_Wikipedia_bot_work?"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=7&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Overview of operation" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <figure class="mw-halign-left" typeof="mw:File"> <a href="https://en-m-wikipedia-org.translate.goog/wiki/File:Wikieditcycle.png?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-file-description"> <noscript> <img src="//upload.wikimedia.org/wikipedia/commons/thumb/0/0e/Wikieditcycle.png/180px-Wikieditcycle.png" decoding="async" width="180" height="145" class="mw-file-element" data-file-width="229" data-file-height="184"> </noscript><span class="lazy-image-placeholder" style="width: 180px;height: 145px;" data-src="//upload.wikimedia.org/wikipedia/commons/thumb/0/0e/Wikieditcycle.png/180px-Wikieditcycle.png" data-width="180" data-height="145" data-srcset="//upload.wikimedia.org/wikipedia/commons/0/0e/Wikieditcycle.png 1.5x" data-class="mw-file-element">&nbsp;</span></a> <figcaption></figcaption> </figure> <p>Just like a human editor, a Wikipedia bot reads Wikipedia 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 that have easily defined patterns, where few decisions have to be made.</p> <p>In the most typical case, a bot logs in to its own account and requests pages from Wikipedia in much the same way as a browser does&nbsp;– although it does not display the page on screen, but works on it in memory&nbsp;– and then programmatically examines the page code to see if any changes need to be made. It then makes and submits whatever edits it was designed to do, again in much the same way a browser would.</p> <p>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 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.</p> <div class="mw-heading mw-heading3"> <h3 id="APIs_for_bots" data-mw-thread-id="h-APIs_for_bots-How_does_a_Wikipedia_bot_work?"><span data-mw-comment-start="" id="h-APIs_for_bots-How_does_a_Wikipedia_bot_work?"></span>APIs for bots<span data-mw-comment-end="h-APIs_for_bots-How_does_a_Wikipedia_bot_work?"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=8&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: APIs for bots" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>In order to make changes to Wikipedia pages, a bot necessarily has to retrieve pages from Wikipedia and send edits back. There are several <a href="https://en-m-wikipedia-org.translate.goog/wiki/Application_programming_interface?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Application programming interface">application programming interfaces</a> (APIs) available for that purpose.</p> <ul> <li><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Main_page" class="extiw" title="mw:API:Main page">MediaWiki API</a> (<a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:ApiHelp?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:ApiHelp"><code>api.php</code></a>). This library was specifically written to permit automated processes such as bots to make queries and post changes. Data is returned in <a href="https://en-m-wikipedia-org.translate.goog/wiki/JSON?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="JSON">JSON</a> format (see <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Data_formats%23Output" class="extiw" title="mw:API:Data formats">output formats</a> for more details). <dl> <dd> <b>Status:</b> Built-in feature of MediaWiki, available on all Wikimedia servers. Other non-Wikimedia wikis may disable or restrict write access. </dd> <dd> There is also an <a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:ApiSandbox?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:ApiSandbox">API sandbox</a> for those wanting to test api.php's features. </dd> </dl></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:Export?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:Export">Special:Export</a> can be used to obtain bulk export of page content in XML form. See <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Parameters_to_Special:Export" class="extiw" title="mw:Manual:Parameters to Special:Export">Manual:Parameters to Special:Export</a> for arguments; <dl> <dd> <b>Status:</b> Built-in feature of MediaWiki, available on all Wikimedia servers. </dd> </dl></li> <li>Raw (Wikitext) page processing: sending an <code>action=raw</code> or an <code>action=raw&amp;templates=expand</code> GET request to index.php will give the unprocessed wikitext source code of a page. For example: <code><a class="external free" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DHelp:Creating_a_bot%26action%3Draw">https://en.wikipedia.org/w/index.php?title=Help:Creating_a_bot&amp;action=raw</a></code>. An API query with <code>action=query&amp;prop=revisions&amp;rvprop=content</code> or <code>action=query&amp;prop=revisions&amp;rvprop=content&amp;rvexpandtemplates=1</code> is roughly equivalent, and allows for retrieving additional information. <dl> <dd> <b>Status:</b> Built-in feature of MediaWiki, available on all Wikimedia servers. </dd> </dl></li> </ul> <p>Some Wikipedia web servers are configured to grant requests for compressed (<a href="https://en-m-wikipedia-org.translate.goog/wiki/GZIP?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="GZIP">GZIP</a>) 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.</p> <div class="mw-heading mw-heading3"> <h3 id="Logging_in" data-mw-thread-id="h-Logging_in-How_does_a_Wikipedia_bot_work?"><span data-mw-comment-start="" id="h-Logging_in-How_does_a_Wikipedia_bot_work?"></span>Logging in<span data-mw-comment-end="h-Logging_in-How_does_a_Wikipedia_bot_work?"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=9&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Logging in" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 frameworks should handle login and cookies automatically, but if you are not using an existing framework, you will need to follow these steps.</p> <p>For security, login data must be passed using the <a href="https://en-m-wikipedia-org.translate.goog/wiki/HTTP_POST?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="HTTP POST">HTTP POST</a> method. Because parameters of <a href="https://en-m-wikipedia-org.translate.goog/wiki/HTTP_GET?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="HTTP GET">HTTP GET</a> requests are easily visible in URL, logins via GET are disabled.</p> <p>To log a bot in using the <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API" class="extiw" title="mw:API">MediaWiki API</a>, two requests are needed:</p> <p><b>Request 1 – this is a GET request to obtain a login token</b></p> <ul> <li>URL: <code><a class="external free" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/api.php?action%3Dquery%26meta%3Dtokens%26type%3Dlogin%26format%3Djson">https://en.wikipedia.org/w/api.php?action=query&amp;meta=tokens&amp;type=login&amp;format=json</a></code></li> </ul> <p><b>Request 2 – this is a POST to complete the login</b></p> <ul> <li>URL: <code><a class="external free" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/api.php?action%3Dlogin%26format%3Djson">https://en.wikipedia.org/w/api.php?action=login&amp;format=json</a></code></li> <li>POST parameters: <ul> <li><code>lgname=BOTUSERNAME</code></li> <li><code>lgpassword=BOTPASSWORD</code></li> <li><code>lgtoken=TOKEN</code></li> </ul></li> </ul> <p>where TOKEN is the token from the previous result. The HTTP cookies from the previous request must also be passed with the second request.</p> <p>A successful login attempt will result in the Wikimedia server setting several <a href="https://en-m-wikipedia-org.translate.goog/wiki/HTTP_cookie?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="HTTP cookie">HTTP cookies</a>. 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 Wikipedia, the following cookies should be used: <b>enwikiUserID</b>, <b>enwikiToken</b>, and <b>enwikiUserName</b>. The <b>enwiki_session</b> cookie is required to actually send an edit or commit some change, otherwise the <a href="https://en-m-wikipedia-org.translate.goog/wiki/MediaWiki:Session_fail_preview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="MediaWiki:Session fail preview">MediaWiki:Session fail preview</a> error message will be returned.</p> <p>Main-account login via "action=login" is deprecated and may stop working without warning. To continue login with "action=login", see <a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:BotPasswords?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:BotPasswords">Special:BotPasswords</a>.</p> <div class="mw-heading mw-heading3"> <h3 id="Editing;_edit_tokens" data-mw-thread-id="h-Editing;_edit_tokens-How_does_a_Wikipedia_bot_work?"><span id="Editing.3B_edit_tokens"></span><span data-mw-comment-start="" id="h-Editing;_edit_tokens-How_does_a_Wikipedia_bot_work?"></span>Editing; edit tokens<span data-mw-comment-end="h-Editing;_edit_tokens-How_does_a_Wikipedia_bot_work?"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=10&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Editing; edit tokens" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Wikipedia uses a system of <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Edit_token" class="extiw" title="mw:Manual:Edit token">edit tokens</a> for making edits to Wikipedia 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:<br></p> <dl> <dd> <b>d41d8cd98f00b204e9800998ecf8427e+\</b><br> </dd> </dl> <p>The role of edit tokens is to prevent "edit hijacking", where users are tricked into making an edit by clicking a single link.</p> <p>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 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.</p> <p>To obtain an edit token, follow these steps:</p> <ul> <li><b>MediaWiki API (api.php)</b>. Make a request with the following parameters (see <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Edit_-_Create%2526Edit_pages" class="extiw" title="mw:API:Edit - Create&amp;Edit pages">mw:API:Edit - Create&amp;Edit pages</a>). <ul> <li><code>action=query</code></li> <li><code>meta=tokens</code></li> </ul><p>The token will be returned in the <code>csrftoken</code> attribute of the response.</p></li> </ul> <p>The URL will look something like this: <code><a class="external free" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/api.php?action%3Dquery%26meta%3Dtokens%26format%3Djson">https://en.wikipedia.org/w/api.php?action=query&amp;meta=tokens&amp;format=json</a></code></p> <p>If the edit token the bot receives does not have the hexadecimal string (<i>i.e.</i>, 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 <i>must</i> use <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Assert" class="extiw" title="mw:API:Assert">assertion</a> to make sure that they are logged in.</p> <div class="mw-heading mw-heading3"> <h3 id="Edit_conflicts" data-mw-thread-id="h-Edit_conflicts-How_does_a_Wikipedia_bot_work?"><span data-mw-comment-start="" id="h-Edit_conflicts-How_does_a_Wikipedia_bot_work?"></span>Edit conflicts<span data-mw-comment-end="h-Edit_conflicts-How_does_a_Wikipedia_bot_work?"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=11&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Edit conflicts" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Edit conflicts occur when multiple, overlapping edit attempts are made on the same page. Almost every bot <i>will</i> eventually get caught in an edit conflict of one sort or another, and should include some mechanism to test for and accommodate these issues.</p> <p>Bots that use the Mediawiki API (api.php) should retrieve the edit token, along with the <code>starttimestamp</code> and the last revision "base" timestamp, <i>before</i> loading the page text in preparation for the edit; <code>prop=info|revisions</code> can be used to retrieve both the token and page contents in one query (<span class="plainlinks"><a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/api.php?action%3Dquery%26titles%3DWikipedia:Sandbox%26prop%3Dinfo%257Crevisions%26inprop%3D%26intoken%3Dedit%26rvprop%3Dtimestamp%257Ccontent">example</a></span>). When submitting the edit, set the <code>starttimestamp</code> and <code>basetimestamp</code> attributes, and check the server responses for indications of errors. For more details, see <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Edit" class="extiw" title="mw:API:Edit">MediaWiki:API:Edit - Create and Edit pages</a>.</p> <p>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 any behavior that could even resemble <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:EW?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:EW">edit warring</a>.</p> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(4)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="Overview_of_the_process_of_developing_a_bot" data-mw-thread-id="h-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Overview_of_the_process_of_developing_a_bot"></span>Overview of the process of developing a bot<span data-mw-comment-end="h-Overview_of_the_process_of_developing_a_bot"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=12&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Overview of the process of developing a bot" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Overview_of_the_process_of_developing_a_bot","replies":["h-Idea-Overview_of_the_process_of_developing_a_bot","h-Specification-Overview_of_the_process_of_developing_a_bot","h-Software_architecture-Overview_of_the_process_of_developing_a_bot","h-Implementation-Overview_of_the_process_of_developing_a_bot","h-Testing-Overview_of_the_process_of_developing_a_bot","h-Documentation-Overview_of_the_process_of_developing_a_bot","h-Queries\/Complaints-Overview_of_the_process_of_developing_a_bot","h-Maintenance-Overview_of_the_process_of_developing_a_bot"]}}--> </div> <section class="mf-section-4 collapsible-block" id="mf-section-4"> <p>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_policy?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot policy">Wikipedia's bot policy</a>. Failure to comply with the policy may lead to your bot failing to be approved or being blocked from editing Wikipedia.</p> <figure class="mw-halign-none" typeof="mw:File/Thumb"> <a href="https://en-m-wikipedia-org.translate.goog/wiki/File:Bot_development_cycle.svg?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-file-description"> <noscript> <img src="//upload.wikimedia.org/wikipedia/commons/thumb/5/51/Bot_development_cycle.svg/600px-Bot_development_cycle.svg.png" decoding="async" width="600" height="538" class="mw-file-element" data-file-width="580" data-file-height="520"> </noscript><span class="lazy-image-placeholder" style="width: 600px;height: 538px;" data-src="//upload.wikimedia.org/wikipedia/commons/thumb/5/51/Bot_development_cycle.svg/600px-Bot_development_cycle.svg.png" data-width="600" data-height="538" data-srcset="//upload.wikimedia.org/wikipedia/commons/thumb/5/51/Bot_development_cycle.svg/900px-Bot_development_cycle.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/5/51/Bot_development_cycle.svg/1200px-Bot_development_cycle.svg.png 2x" data-class="mw-file-element">&nbsp;</span></a> <figcaption> Overview of Wikipedia bot development cycle </figcaption> </figure> <div class="mw-heading mw-heading4"> <h4 id="Idea" data-mw-thread-id="h-Idea-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Idea-Overview_of_the_process_of_developing_a_bot"></span>Idea<span data-mw-comment-end="h-Idea-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=13&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Idea" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li>The first task in creating a Wikipedia 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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_requests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot requests">requests for work to be done by a bot</a>.</li> <li>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_activity_monitor?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot activity monitor">the list of currently operating bots</a>.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Specification" data-mw-thread-id="h-Specification-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Specification-Overview_of_the_process_of_developing_a_bot"></span>Specification<span data-mw-comment-end="h-Specification-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=14&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Specification" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Formal_specification?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Formal specification">Specification</a> 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 ideas from other editors.</li> <li>In the most basic form, your specified bot must meet the following criteria: <ul> <li>The bot is harmless (it must not make edits that could be considered disruptive to the smooth running of the encyclopedia)</li> <li>The bot is useful (it provides a useful service more effectively than a human editor could)</li> <li>The bot does not waste server resources.</li> </ul></li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Software_architecture" data-mw-thread-id="h-Software_architecture-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Software_architecture-Overview_of_the_process_of_developing_a_bot"></span>Software architecture<span data-mw-comment-end="h-Software_architecture-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=15&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Software architecture" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li>Think about <b>how</b> you might create a bot, and which programming language(s) and tools you would use. <a href="https://en-m-wikipedia-org.translate.goog/wiki/Software_architecture?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Software architecture">Architecture</a> 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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Programming_languages_and_libraries">§&nbsp;Programming languages and libraries</a>.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Implementation" data-mw-thread-id="h-Implementation-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Implementation-Overview_of_the_process_of_developing_a_bot"></span>Implementation<span data-mw-comment-end="h-Implementation-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=16&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Implementation" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p><a href="https://en-m-wikipedia-org.translate.goog/wiki/Computer_programming?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Computer programming">Implementation</a> (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:</p> <ul> <li>Create an account for your bot. Click <a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DSpecial:UserLogin%26type%3Dsignup">here</a> 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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:SOCK?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:SOCK">sockpuppet</a> or unauthorised bot until you verify ownership)</li> <li>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.</li> <li>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.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Testing" data-mw-thread-id="h-Testing-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Testing-Overview_of_the_process_of_developing_a_bot"></span>Testing<span data-mw-comment-end="h-Testing-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=17&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Testing" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Pywikibot" class="extiw" title="mw:Manual:Pywikibot"> pywikibot</a>) have pre-coded methods for showing diffs. During the <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:BRFA?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:BRFA">approvals process</a>, 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.</p> <div class="mw-heading mw-heading4"> <h4 id="Documentation" data-mw-thread-id="h-Documentation-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Documentation-Overview_of_the_process_of_developing_a_bot"></span>Documentation<span data-mw-comment-end="h-Documentation-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=18&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Documentation" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>An important (and often overlooked) task is <a href="https://en-m-wikipedia-org.translate.goog/wiki/Software_documentation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Software documentation">documenting</a> 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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Open-source_bots">#Open-source bots</a>) 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.</p> <div class="mw-heading mw-heading4"> <h4 id="Queries/Complaints" data-mw-thread-id="h-Queries/Complaints-Overview_of_the_process_of_developing_a_bot"><span id="Queries.2FComplaints"></span><span data-mw-comment-start="" id="h-Queries/Complaints-Overview_of_the_process_of_developing_a_bot"></span>Queries/Complaints<span data-mw-comment-end="h-Queries/Complaints-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=19&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Queries/Complaints" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:FU?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:FU">fair-use image cleanup</a>.</p> <div class="mw-heading mw-heading4"> <h4 id="Maintenance" data-mw-thread-id="h-Maintenance-Overview_of_the_process_of_developing_a_bot"><span data-mw-comment-start="" id="h-Maintenance-Overview_of_the_process_of_developing_a_bot"></span>Maintenance<span data-mw-comment-end="h-Maintenance-Overview_of_the_process_of_developing_a_bot"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=20&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Maintenance" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p><a href="https://en-m-wikipedia-org.translate.goog/wiki/Software_maintenance?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Software maintenance">Maintaining</a> 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.</p> <p>Major functionality changes of approved bots must be <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots/Requests_for_approval?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots/Requests for approval">approved</a>.</p> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(5)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="General_guidelines_for_running_a_bot" data-mw-thread-id="h-General_guidelines_for_running_a_bot"><span data-mw-comment-start="" id="h-General_guidelines_for_running_a_bot"></span>General guidelines for running a bot<span data-mw-comment-end="h-General_guidelines_for_running_a_bot"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=21&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: General guidelines for running a bot" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-General_guidelines_for_running_a_bot","replies":["h-Bot_best_practices-General_guidelines_for_running_a_bot","h-Common_bot_features_you_should_consider_implementing-General_guidelines_for_running_a_bot"]}}--> </div> <section class="mf-section-5 collapsible-block" id="mf-section-5"> <p>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.</p> <div class="mw-heading mw-heading3"> <h3 id="Bot_best_practices" data-mw-thread-id="h-Bot_best_practices-General_guidelines_for_running_a_bot"><span data-mw-comment-start="" id="h-Bot_best_practices-General_guidelines_for_running_a_bot"></span>Bot best practices<span data-mw-comment-end="h-Bot_best_practices-General_guidelines_for_running_a_bot"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=22&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Bot best practices" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li>Set a custom <a href="https://en-m-wikipedia-org.translate.goog/wiki/User_agent?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User agent">User-Agent</a> header for your bot, per the <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://meta.wikimedia.org/wiki/User-Agent_policy" class="extiw" title="meta:User-Agent policy">Wikimedia User-Agent policy</a>. If you don't, your bot may encounter errors and may end up blocked by the technical staff at the server level.</li> <li>Use the <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Maxlag_parameter" class="extiw" title="mw:Manual:Maxlag parameter">maxlag parameter</a> 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. <ul> <li>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.</li> </ul></li> <li>Use the <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API" class="extiw" title="mw:API">API</a> 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.</li> <li>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. <ul> <li>Try to consolidate edits. One single large edit is better than 10 smaller ones.</li> </ul></li> <li>Enable <a href="https://en-m-wikipedia-org.translate.goog/wiki/HTTP_persistent_connection?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="HTTP persistent connection">HTTP persistent connections</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/HTTP_compression?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="HTTP compression">compression</a> in your HTTP client library, if possible.</li> <li>Do not make multi-threaded requests. Wait for one server request to complete before beginning another.</li> <li>Back off upon receiving errors from the server. Errors such as timeouts are often an indication of heavy server load. Use <a href="https://en-m-wikipedia-org.translate.goog/wiki/Exponential_backoff?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Exponential backoff">a sequence of increasingly longer delays between repeated requests</a>.</li> <li>Make use of <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Assert" class="extiw" title="mw:API:Assert">assertion</a> to ensure your bot is logged in.</li> <li>Test your code thoroughly before making large automated runs. Individually examine all edits on trial runs to verify they are perfect.</li> </ul> <div class="mw-heading mw-heading3"> <h3 id="Common_bot_features_you_should_consider_implementing" data-mw-thread-id="h-Common_bot_features_you_should_consider_implementing-General_guidelines_for_running_a_bot"><span data-mw-comment-start="" id="h-Common_bot_features_you_should_consider_implementing-General_guidelines_for_running_a_bot"></span>Common bot features you should consider implementing<span data-mw-comment-end="h-Common_bot_features_you_should_consider_implementing-General_guidelines_for_running_a_bot"></span></h3><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=23&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Common bot features you should consider implementing" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <div class="mw-heading mw-heading4"> <h4 id="Manual_assistance" data-mw-thread-id="h-Manual_assistance-Common_bot_features_you_should_consider_implementing"><span data-mw-comment-start="" id="h-Manual_assistance-Common_bot_features_you_should_consider_implementing"></span>Manual assistance<span data-mw-comment-end="h-Manual_assistance-Common_bot_features_you_should_consider_implementing"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=24&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Manual assistance" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 significantly reduces errors.</p> <div class="mw-heading mw-heading4"> <h4 id="Disabling_the_bot" data-mw-thread-id="h-Disabling_the_bot-Common_bot_features_you_should_consider_implementing"><span data-mw-comment-start="" id="h-Disabling_the_bot-Common_bot_features_you_should_consider_implementing"></span>Disabling the bot<span data-mw-comment-end="h-Disabling_the_bot-Common_bot_features_you_should_consider_implementing"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=25&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Disabling the bot" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 using the API <code>meta=userinfo</code> query (<span class="plainlinks"><a class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/api.php?action%3Dquery%26meta%3Duserinfo%26uiprop%3Dhasmsg">example</a></span>). 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.</p> <div class="mw-heading mw-heading4"> <h4 id="Signature" data-mw-thread-id="h-Signature-Common_bot_features_you_should_consider_implementing"><span data-mw-comment-start="" id="h-Signature-Common_bot_features_you_should_consider_implementing"></span>Signature<span data-mw-comment-end="h-Signature-Common_bot_features_you_should_consider_implementing"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=26&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Signature" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Just like a human, if your bot makes edits to a talk page on Wikipedia, it should sign its post with four tildes (~~~~). Signatures belong <b>only</b> on talk namespaces with the exception of project pages used for discussion (e.g., <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:AFD?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:AFD">articles for deletion</a>).</p> <div class="mw-heading mw-heading4"> <h4 id="Bot_Flag" data-mw-thread-id="h-Bot_Flag-Common_bot_features_you_should_consider_implementing"><span data-mw-comment-start="" id="h-Bot_Flag-Common_bot_features_you_should_consider_implementing"></span>Bot Flag<span data-mw-comment-end="h-Bot_Flag-Common_bot_features_you_should_consider_implementing"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=27&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Bot Flag" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>A bot's edits will be visible at <a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:RecentChanges?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:RecentChanges">Special:RecentChanges</a>, 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 <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Edit%23Parameters" class="extiw" title="mw:API:Edit">mw:API:Edit#Parameters</a> in order to hide the bot's edits in <a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:RecentChanges?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:RecentChanges">Special:RecentChanges</a>. In Python, using either mwclient or wikitools, then adding <b><span style="color:green;">bot=True</span></b> to the edit/save command will set the edit as a bot edit - e.g. <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">PageObject.edit(text=pagetext, bot=True, summary=pagesummary)</code>.</p> <div class="mw-heading mw-heading4"> <h4 id="Monitoring_the_bot_status" data-mw-thread-id="h-Monitoring_the_bot_status-Common_bot_features_you_should_consider_implementing"><span data-mw-comment-start="" id="h-Monitoring_the_bot_status-Common_bot_features_you_should_consider_implementing"></span>Monitoring the bot status<span data-mw-comment-end="h-Monitoring_the_bot_status-Common_bot_features_you_should_consider_implementing"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=28&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Monitoring the bot status" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bot_activity_monitor?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bot activity monitor">Wikipedia:Bot activity monitor</a> to be notified if the bot stops working.</p> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(6)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="Open-source_bots" data-mw-thread-id="h-Open-source_bots"><span data-mw-comment-start="" id="h-Open-source_bots"></span>Open-source bots<span data-mw-comment-end="h-Open-source_bots"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=29&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Open-source bots" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Open-source_bots","replies":[]}}--> </div> <section class="mf-section-6 collapsible-block" id="mf-section-6"> <p>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:</p> <ul> <li>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.</li> <li>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.</li> <li>It encourages <a href="https://en-m-wikipedia-org.translate.goog/wiki/Secure_by_design?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Secure by design">good security practices</a>, rather than <a href="https://en-m-wikipedia-org.translate.goog/wiki/Security_through_obscurity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Security through obscurity">security through obscurity</a>.</li> <li>If you abandon the project, it allows other users to run your bot tasks without having to write new code.</li> </ul> <p>Open-source code, while rarely required, is typically encouraged in keeping with the open and transparent nature of Wikipedia.</p> <p>Before sharing code, make sure that sensitive information such as passwords is separated into a file that isn't made public.</p> <p>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 Wikipedia's licensing terms in addition to any other terms you may specify. A better solution is to use a <a href="https://en-m-wikipedia-org.translate.goog/wiki/Revision_control_system?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Revision control system">revision control system</a> such as <a href="https://en-m-wikipedia-org.translate.goog/wiki/Apache_Subversion?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Apache Subversion">SVN</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Git_(software)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Git (software)">Git</a>, or <a href="https://en-m-wikipedia-org.translate.goog/wiki/Mercurial?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Mercurial">Mercurial</a>. Wikipedia has articles comparing the different <a href="https://en-m-wikipedia-org.translate.goog/wiki/Comparison_of_revision_control_software?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Comparison of revision control software">software options</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/Comparison_of_open_source_software_hosting_facilities?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Comparison of open source software hosting facilities">websites for code hosting</a>, many of which have no cost.</p> </section> <div class="mw-heading mw-heading2 ext-discussiontools-init-section section-heading" onclick="mfTempOpenSection(7)"> <span class="indicator mf-icon mf-icon-expand mf-icon--small"></span> <h2 id="Programming_languages_and_libraries" data-mw-thread-id="h-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Programming_languages_and_libraries"></span>Programming languages and libraries<span data-mw-comment-end="h-Programming_languages_and_libraries"></span></h2><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=30&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Programming languages and libraries" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> <!--__DTELLIPSISBUTTON__{"threadItem":{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Programming_languages_and_libraries","replies":["h-Awk-Programming_languages_and_libraries","h-Perl-Programming_languages_and_libraries","h-PHP-Programming_languages_and_libraries","h-Python-Programming_languages_and_libraries","h-MATLAB-Programming_languages_and_libraries","h-Microsoft_.NET-Programming_languages_and_libraries","h-Java-Programming_languages_and_libraries","h-Node.js-Programming_languages_and_libraries","h-Ruby-Programming_languages_and_libraries","h-Common_Lisp-Programming_languages_and_libraries","h-Haskell-Programming_languages_and_libraries","h-VBScript-Programming_languages_and_libraries","h-Lua-Programming_languages_and_libraries"]}}--> </div> <section class="mf-section-7 collapsible-block" id="mf-section-7"> <style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style> <div role="note" class="hatnote navigation-not-searchable"> See also: <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Client_code" class="extiw" title="mw:API:Client code">mw:API:Client code</a> and <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Alternative_parsers" class="extiw" title="mw:Alternative parsers">mw:Alternative parsers</a> </div> <p>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:</p> <div class="mw-heading mw-heading4"> <h4 id="Awk" data-mw-thread-id="h-Awk-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Awk-Programming_languages_and_libraries"></span>Awk<span data-mw-comment-end="h-Awk-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=31&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Awk" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p><a href="https://en-m-wikipedia-org.translate.goog/wiki/GNU_Awk?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="GNU Awk">GNU Awk</a> is an easy language for bots small and large, including OAuth.</p> <ul> <li>Framework and libraries: <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:BOTWIKIAWK?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:BOTWIKIAWK">BotWikiAwk</a></li> <li>Example bots in the GitHub account of <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:GreenC?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:GreenC">User:GreenC</a> at <a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/greencardamom?tab%3Drepositories">GitHub</a></li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Perl" data-mw-thread-id="h-Perl-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Perl-Programming_languages_and_libraries"></span>Perl<span data-mw-comment-end="h-Perl-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=32&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Perl" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>If located on a webserver, you can start your program running and interface with your program while it is running via the <a href="https://en-m-wikipedia-org.translate.goog/wiki/Common_Gateway_Interface?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Common Gateway Interface">Common Gateway Interface</a> 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.</p> <p>Libraries:</p> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://search.cpan.org/perldoc?MediaWiki::API">MediaWiki::API</a>&nbsp;– Basic interface to the API, allowing scripts to automate editing and extraction of data from MediaWiki driven sites.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://search.cpan.org/perldoc?MediaWiki::Bot">MediaWiki::Bot</a>&nbsp;– 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.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="PHP" data-mw-thread-id="h-PHP-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-PHP-Programming_languages_and_libraries"></span>PHP<span data-mw-comment-end="h-PHP-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=33&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: PHP" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p><a href="https://en-m-wikipedia-org.translate.goog/wiki/PHP?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="PHP">PHP</a> 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 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.)</p> <p>The <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:PHP_bot_functions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:PHP bot functions">PHP bot functions</a> table may provide some insight into the capabilities of the major bot frameworks.</p> <table class="wikitable sortable" border="1"> <caption> Current <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Creating_a_bot%23PHP" class="extiw" title="mw:Manual:Creating a bot">PHP bot</a> frameworks </caption> <tbody> <tr> <th>Key people<sup id="cite_ref-1" class="reference"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#cite_note-1"><span class="cite-bracket">[</span>php 1<span class="cite-bracket">]</span></a></sup></th> <th>Name</th> <th>PHP versions confirmed working</th> <th>Last release</th> <th>Last master branch update</th> <th>Uses API<sup id="cite_ref-2" class="reference"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#cite_note-2"><span class="cite-bracket">[</span>php 2<span class="cite-bracket">]</span></a></sup></th> <th><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Bots">Exclusion compliant</a></th> <th>Admin functions</th> <th>Plugins</th> <th>Repository</th> <th>Notes</th> </tr> <tr> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Cyberpower678?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Cyberpower678">Cyberpower678</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Addshore?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Addshore">Addshore</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Jarry1250?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Jarry1250">Jarry1250</a></td> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Peachy?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Peachy">Peachy</a></td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">5.2.1</td> <td>2013</td> <td>2022</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/MW-Peachy/Peachy">GitHub</a></td> <td>Large framework, currently undergoing rewrite. Documentation currently non-existent, so poke <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Cyberpower678?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Cyberpower678">User:Cyberpower678</a> for help.</td> </tr> <tr> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Addshore?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Addshore">Addshore</a></td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/addwiki/mediawiki-api-base">mediawiki-api-base</a></td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">7.4</td> <td>2021</td> <td>2022</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A</td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A</td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">extra libs</td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/addwiki/mediawiki-api-base">GitHub</a></td> <td>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.</td> </tr> <tr> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Addshore?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Addshore">Addshore</a></td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/addwiki/mediawiki-api">mediawiki-api</a></td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">7.4</td> <td>2021</td> <td>2022</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No</td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">some</td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">extra libs</td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/addwiki/mediawiki-api">GitHub</a></td> <td>Built on top of <code>mediawiki-api-base</code> mentioned above, this adds more advanced services for the API such as <code>RevisionGetter</code>, <code>UserGetter</code>, <code>PageDeleter</code>, <code>RevisionPatroller</code>, <code>RevisionSaver</code>, etc. Supports <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Upload%23Chunked_uploading" class="extiw" title="mw:API:Upload">chunked uploading</a>.</td> </tr> <tr> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Nzhamstar?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Nzhamstar">Nzhamstar</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Xymph?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Xymph">Xymph</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Waldyrious?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Waldyrious">Waldyrious</a></td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/hamstar/Wikimate">Wikimate</a></td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">5.3-5.6,<br> 7.x, 8.x</td> <td>2023</td> <td>2024</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No</td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No</td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No</td> <td><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/hamstar/Wikimate">GitHub</a></td> <td>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.</td> </tr> <tr> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Chris_G?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Chris G">Chris G</a>,<br><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Wbm1058?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Wbm1058">wbm1058</a></td> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:RMCD_bot/botclasses.php?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:RMCD bot/botclasses.php">botclasses.php</a></td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">8.2</td> <td>n/a</td> <td>2024</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes</td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No</td> <td><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:RMCD_bot/botclasses.php?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:RMCD bot/botclasses.php">on wiki</a></td> <td>Fork of older wikibot.classes (used by <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:ClueBot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:ClueBot">ClueBot</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:SoxBot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="User:SoxBot">SoxBot</a>). Updated for 2010 and 2015 API changes. Supports file uploading.</td> </tr> </tbody> </table> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style> <div class="reflist"> <div class="mw-references-wrap"> <ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#cite_ref-1">^</a></b></span> <span class="reference-text">Does not include those who worked on frameworks forked to create listed framework.</span></li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creating_a_bot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#cite_ref-2">^</a></b></span> <span class="reference-text">Where possible. Excludes uploading images and other such tasks which are not currently supported by the API.</span></li> </ol> </div> </div> <div class="mw-heading mw-heading4"> <h4 id="Python" data-mw-thread-id="h-Python-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Python-Programming_languages_and_libraries"></span><a href="https://en-m-wikipedia-org.translate.goog/wiki/Python_(programming_language)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Python (programming language)">Python</a><span data-mw-comment-end="h-Python-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=34&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Python" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Libraries:</p> <ul> <li><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Manual:Pywikibot" class="extiw" title="mw:Manual:Pywikibot">Pywikibot</a>&nbsp;– Probably the most used bot framework.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/Riamse/ceterach">ceterach</a>&nbsp;– An interface for interacting with MediaWiki</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/alexz-enwp/wikitools">wikitools</a>&nbsp;– A Python-2 only lightweight bot framework that uses the MediaWiki API exclusively for getting data and editing, used and maintained by <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Mr.Z-man?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Mr.Z-man">Mr.Z-man</a> (<a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://pypi.python.org/pypi/wikitools">downloads</a>)</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/mwclient/mwclient">mwclient</a>&nbsp;– An API-based framework maintained by <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Bryan?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Bryan">Bryan</a></li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/earwig/mwparserfromhell">mwparserfromhell</a>&nbsp;– A wikitext parser, maintained by <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:The_Earwig?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:The Earwig">The Earwig</a></li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/barrust/mediawiki">pymediawiki</a>&nbsp;– A read-only MediaWiki API wrapper in Python, which is simple to use.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="MATLAB" data-mw-thread-id="h-MATLAB-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-MATLAB-Programming_languages_and_libraries"></span>MATLAB<span data-mw-comment-end="h-MATLAB-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=35&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: MATLAB" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/JRCSTU/MatWiki">MatWiki</a>&nbsp;– a preliminary (as of Feb 2019) MATLAB R2016b(9.1.x) client supporting just bot-logins and semantic #ask queries.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Microsoft_.NET" data-mw-thread-id="h-Microsoft_.NET-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Microsoft_.NET-Programming_languages_and_libraries"></span>Microsoft .NET<span data-mw-comment-end="h-Microsoft_.NET-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=36&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Microsoft .NET" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p><a href="https://en-m-wikipedia-org.translate.goog/wiki/Microsoft_.NET?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Microsoft .NET">Microsoft .NET</a> is a set of languages including <a href="https://en-m-wikipedia-org.translate.goog/wiki/Microsoft_Visual_C_Sharp?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Microsoft Visual C Sharp">C#</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/C%2B%2B/CLI?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="C++/CLI">C++/CLI</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Visual_Basic_.NET?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Visual Basic .NET">Visual Basic .NET</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/J_Sharp?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="J Sharp">J#</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/JScript_.NET?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="JScript .NET">JScript .NET</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/IronPython?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="IronPython">IronPython</a>, and <a href="https://en-m-wikipedia-org.translate.goog/wiki/Windows_PowerShell?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Windows PowerShell">Windows PowerShell</a>. Using <a href="https://en-m-wikipedia-org.translate.goog/wiki/Mono_(software)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Mono (software)">Mono Project</a>, .NET programs can also run on <a href="https://en-m-wikipedia-org.translate.goog/wiki/Linux?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Linux">Linux</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Unix?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Unix">Unix</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/BSD?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="BSD">BSD</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Solaris_(operating_system)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Solaris (operating system)">Solaris</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/MacOS?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="MacOS">macOS</a> as well as under <a href="https://en-m-wikipedia-org.translate.goog/wiki/Windows?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Windows">Windows</a>.</p> <p>Libraries:</p> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=http://dotnetwikibot.sourceforge.net/">DotNetWikiBot Framework</a>&nbsp;– a full-featured client <a href="https://en-m-wikipedia-org.translate.goog/wiki/API?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="API">API</a> 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.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=http://sourceforge.net/project/showfiles.php?group_id%3D158332">WikiFunctions .NET library</a>&nbsp;– Bundled with <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:AWB?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:AWB">AWB</a>, is a library of stuff useful for bots, such as generating lists, loading/editing articles, connecting to the recent changes IRC channel and more.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/CXuesong/WikiClientLibrary">WikiClientLibrary</a> — is a portable &amp; asynchronous MediaWiki API client library on .NET Standard. (<a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.nuget.org/packages/CXuesong.MW.WikiClientLibrary/">see on nuget</a>, <a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/CXuesong/WikiClientLibrary/wiki/%255BMediaWiki%255D-Getting-started">docs</a>).</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Java" data-mw-thread-id="h-Java-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Java-Programming_languages_and_libraries"></span><a href="https://en-m-wikipedia-org.translate.goog/wiki/Java_(programming_language)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Java (programming language)">Java</a><span data-mw-comment-end="h-Java-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=37&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Java" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Libraries:</p> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/eldur/jwbf">Java Wiki Bot Framework</a>&nbsp;– A Java wiki bot framework</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/mer-c/wiki-java">wiki-java</a>&nbsp;– A Java wiki bot framework that is only one file</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/WPCleaner/wpcleaner">WPCleaner</a>&nbsp;– The library used by the WPCleaner tool</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/fastily/jwiki">jwiki</a>&nbsp;– A simple and easy-to-use Java wiki bot framework</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Node.js" data-mw-thread-id="h-Node.js-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Node.js-Programming_languages_and_libraries"></span>Node.js<span data-mw-comment-end="h-Node.js-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=38&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Node.js" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Libraries:</p> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.npmjs.com/package/mwn">mwn</a>&nbsp;– 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 <a href="https://en-m-wikipedia-org.translate.goog/wiki/TypeScript?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="TypeScript">TypeScript</a>. See <a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/siddharthvp/mwn">mwn</a> on <a href="https://en-m-wikipedia-org.translate.goog/wiki/GitHub?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="GitHub">GitHub</a>.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.npmjs.com/package/mock-mediawiki">mock-mediawiki</a>&nbsp;– An implementation of the MediaWiki JS interface in Node.js. See <a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/wikimedia-gadgets/mock-mediawiki">mock-mediawiki</a> on <a href="https://en-m-wikipedia-org.translate.goog/wiki/GitHub?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="GitHub">GitHub</a>.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.npmjs.com/package/wikiapi">wikiapi</a>&nbsp;– A simple way to access MediaWiki API via JavaScript with simple wikitext parser, using CeJS MediaWiki module. See <a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/kanasimi/wikibot">Wikipedia bot examples</a> on <a href="https://en-m-wikipedia-org.translate.goog/wiki/GitHub?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="GitHub">GitHub</a>.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Ruby" data-mw-thread-id="h-Ruby-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Ruby-Programming_languages_and_libraries"></span><a href="https://en-m-wikipedia-org.translate.goog/wiki/Ruby_(programming_language)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Ruby (programming language)">Ruby</a><span data-mw-comment-end="h-Ruby-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=39&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Ruby" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p>Libraries:</p> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/FTB-Gamepedia/MediaWiki-Butt-Ruby">MediaWiki::Butt</a>&nbsp;– API client. Actively maintained. See <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/API:Client_code/Evaluations/MediaWiki-Butt" class="extiw" title="mw:API:Client code/Evaluations/MediaWiki-Butt">evaluation</a></li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/wikimedia/mediawiki-ruby-api">mediawiki/ruby/api</a>&nbsp;– API client by <a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team" class="extiw" title="mw:Wikimedia Release Engineering Team">Wikimedia Release Engineering Team</a>. Last updated December 2017, no longer maintained, but still works.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/kenpratt/wikipedia-client">wikipedia-client</a>&nbsp;– API client. Last updated March 2018. Unknown if still works.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/jpatokal/mediawiki-gateway">MediaWiki::Gateway</a>&nbsp;– API client. Last updated January 2016. Tested up to MediaWiki 1.22, was then compatible with Wikimedia wikis. Unknown if still works.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Common_Lisp" data-mw-thread-id="h-Common_Lisp-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Common_Lisp-Programming_languages_and_libraries"></span>Common Lisp<span data-mw-comment-end="h-Common_Lisp-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=40&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Common Lisp" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=http://www.cliki.net/CL-MediaWiki">CL-MediaWiki</a>&nbsp;– implements MediaWiki API as a <a href="https://en-m-wikipedia-org.translate.goog/wiki/Common_Lisp?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Common Lisp">Common Lisp</a> package. Is planned to use <a href="https://en-m-wikipedia-org.translate.goog/wiki/JSON?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="JSON">JSON</a> as a query data format. Supports maxlag and assertion.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Haskell" data-mw-thread-id="h-Haskell-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Haskell-Programming_languages_and_libraries"></span>Haskell<span data-mw-comment-end="h-Haskell-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=41&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Haskell" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li><a rel="nofollow" class="external free" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=http://hackage.haskell.org/package/mediawiki">http://hackage.haskell.org/package/mediawiki</a></li> </ul> <div class="mw-heading mw-heading4"> <h4 id="VBScript" data-mw-thread-id="h-VBScript-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-VBScript-Programming_languages_and_libraries"></span>VBScript<span data-mw-comment-end="h-VBScript-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=42&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: VBScript" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <p><a href="https://en-m-wikipedia-org.translate.goog/wiki/VBScript?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="VBScript">VBScript</a> is a <a href="https://en-m-wikipedia-org.translate.goog/wiki/Scripting_language?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Scripting language">scripting language</a> based on the <a href="https://en-m-wikipedia-org.translate.goog/wiki/Visual_Basic?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Visual Basic">Visual Basic</a> programming language. There are no published bot frameworks for VBScript, but some examples of bots that use it can be seen below:</p> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Smallman12q/Scripts/cleanuplistingtowiki?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Smallman12q/Scripts/cleanuplistingtowiki">User:Smallman12q/Scripts/cleanuplistingtowiki</a>&nbsp;– Login and give preview of edit</li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Smallman12q/VBS/Savewatchlist?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="User:Smallman12q/VBS/Savewatchlist">User:Smallman12q/VBS/Savewatchlist</a>&nbsp;– Login, get raw watchlist, save to file, logout, close IE</li> <li><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://commons.wikimedia.org/wiki/User:Smallbot%23Sources" class="extiw" title="commons:User:Smallbot">Commons:User:Smallbot#Sources</a>&nbsp;– Several scripts showing the usage of VBScript (Javascript, XMLHTTP, MSHTML, XMLDOM, COM) for batch uploads.</li> </ul> <div class="mw-heading mw-heading4"> <h4 id="Lua" data-mw-thread-id="h-Lua-Programming_languages_and_libraries"><span data-mw-comment-start="" id="h-Lua-Programming_languages_and_libraries"></span>Lua<span data-mw-comment-end="h-Lua-Programming_languages_and_libraries"></span></h4><span class="mw-editsection"> <a role="button" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=edit&amp;section=43&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Edit section: Lua" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </div> <ul> <li>During the Lua Annual Workshop 2016, <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Jim_Carter?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Jim Carter">Jim Carter</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Dfavro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Dfavro">Dfavro</a> started developing Lua's bot framework for Wikimedia projects. Please contact Jim Carter on their talk page to discuss.</li> <li><a rel="nofollow" class="external text" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://github.com/AlexanderMisel/mwtest">mwtest</a> is an example using Lua to write a wikibot, created by <a href="https://en-m-wikipedia-org.translate.goog/wiki/User:Alexander_Misel?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="User:Alexander Misel">User:Alexander Misel</a>, with simple API.</li> </ul> <div class="navbox-styles"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"> <style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style> </div> <div role="navigation" class="navbox" aria-labelledby="Wikipedia_technical_help" style="padding:3px"> <table class="nowraplinks hlist mw-collapsible mw-collapsed navbox-inner" style="border-spacing:0;background:transparent;color:inherit"> <tbody> <tr> <th scope="col" class="navbox-title" colspan="2" style="text-align: center;"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style> <div class="navbar plainlinks hlist navbar-mini"> <ul> <li class="nv-view"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Wikipedia_technical_help?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Wikipedia technical help"><abbr title="View this template">v</abbr></a></li> <li class="nv-talk"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template_talk:Wikipedia_technical_help?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template talk:Wikipedia technical help"><abbr title="Discuss this template">t</abbr></a></li> <li class="nv-edit"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:EditPage/Template:Wikipedia_technical_help?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:EditPage/Template:Wikipedia technical help"><abbr title="Edit this template">e</abbr></a></li> </ul> </div> <div id="Wikipedia_technical_help" style="font-size:114%;margin:0 4em"> <a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Directory?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Technical_help" title="Help:Directory">Wikipedia technical help</a> </div></th> </tr> <tr> <td class="navbox-abovebelow" colspan="2" style="text-align: center;"> <div> <b>Get personal technical help at <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Teahouse?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Teahouse">the Teahouse</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Help_desk?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Help desk">help desk</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Village_pump_(technical)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Village pump (technical)">village pump (technical)</a>, <a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Introduction_to_talk_pages/1?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Introduction to talk pages/1">talk pages</a> or <a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:IRC?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:IRC">IRC</a>.</b> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:FAQ/Technical?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:FAQ/Technical">General<br> technical help</a></th> <td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Browser_notes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Browser notes">Browser notes</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bypass_your_cache?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bypass your cache">Bypass cache</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Keyboard_shortcuts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Wikipedia:Keyboard shortcuts">Keyboard shortcuts</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Editing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Editing">Editing</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:CharInsert?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:CharInsert">CharInsert</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Edit_conflict?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Edit conflict">Edit conflict</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Edit_toolbar?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Edit toolbar">Edit toolbar</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Reverting?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Reverting">Reverting</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:How_to_create_a_page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:How to create a page">How to create a page</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:IRC?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:IRC">IRC</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:IRC/Tutorial?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:IRC/Tutorial">Tutorial</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Mobile_access?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Mobile access">Mobile access</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Multilingual_support?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Multilingual support">Multilingual support</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Page_history?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Page history">Page history</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Page_information?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Page information">Page information</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Page_name?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Page name">Page name</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Page_name?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Page name">Help</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Printing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Printing">Printing</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Software_notices?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Software notices">Software notices</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Editnotice?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Editnotice">Editnotice</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Special_characters?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Special characters">Special Characters</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Entering_special_characters?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Entering special characters">Entering</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_access_levels?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User access levels">User access levels</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:VisualEditor?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:VisualEditor">VisualEditor</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:VisualEditor?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:VisualEditor">Help</a></li> </ul></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Special:SpecialPages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Special:SpecialPages">Special<br> page</a>-related</th> <td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Special_page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Special page">Special page help</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:AllPages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:AllPages">AllPages</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Edit_filter?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Edit filter">Edit filter</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Emailing_users?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Emailing users">Emailing users</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Logging_in?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Logging in">Logging in</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Reset_password?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Reset password">Reset passwords</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Log?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Log">Logs</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Moving_a_page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Moving a page">Moving a page</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:History_merging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:History merging">History merging</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:When_to_place_technical_requests_in_%22Administrator_needed%22?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:When to place technical requests in &quot;Administrator needed&quot;">Non-admin and admin-only page moves</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Notifications?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Notifications">Notifications/Echo</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Notifications/FAQ?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Notifications/FAQ">FAQ</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Page_Curation/Help?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Page Curation/Help">Page Curation</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Import?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Import">Page import</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Pending_changes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Pending changes">Pending changes</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Random?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Random">Random pages</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Recent_changes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Recent changes">Recent changes</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Related_changes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Related changes">Related changes</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Searching?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Searching">Searching</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Linksearch?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Linksearch">Linksearch</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tags?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tags">Tags</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:User_contributions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:User contributions">User contributions</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Watchlist?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Watchlist">Watchlist</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:What_links_here?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:What links here">What links here</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Wikitext?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Wikitext">Wikitext</a></th> <td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Wikitext?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Wikitext">Wikitext</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Cheatsheet?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Cheatsheet">Cheatsheet</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Columns?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Columns">Columns</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Line-break_handling?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Line-break handling">Line-break handling</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:List?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:List">Lists</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Magic_words?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Magic words">Magic words</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Magic_words_for_beginners?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Magic words for beginners">For beginners</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Conditional_expressions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Conditional expressions">Conditional expressions</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Switch_parser_function?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Switch parser function">Switch parser function</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Time_function?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Time function">Time function</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Redirect?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Redirect">Redirects</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Section?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Section">Sections and TOCs</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Table?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Table">Tables</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Introduction_to_tables_with_Wiki_Markup/1?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Introduction to tables with Wiki Markup/1">Introduction</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Basic_table_markup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Basic table markup">Basics</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Advanced_table_formatting?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Advanced table formatting">Advanced table formatting</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Collapsing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-redirect" title="Help:Collapsing">Collapsing</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Conditional_tables?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Conditional tables">Conditional tables</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Sortable_tables?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Sortable tables">Sortable tables</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Using_colours?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Using colours">Using colours</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Link?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Link">Links</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Diff?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Diff">diffs</a></th> <td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Link?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Link">Links</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Interlanguage_links?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Interlanguage links">Interlanguage</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Interwiki_linking?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Interwiki linking">Interwiki</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Permanent_link?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Permanent link">Permanent</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Diff?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Diff">Diffs</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Simplest_diff_guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Simplest diff guide">Simplest diff guide</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Simple_diff_and_link_guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Simple diff and link guide">Simple diff and link guide</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Complete_diff_and_link_guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Complete diff and link guide">Complete diff and link guide</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Colon_trick?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Colon trick">Colon trick</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Link_color?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Link color">Link color</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Pipe_trick?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Pipe trick">Pipe trick</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:URL?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:URL">URLs</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" class="mw-disambig" title="Wikipedia:Media">Media</a> files: images,<br> videos and sounds</th> <td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Media">Media help</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Files?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Files">Files</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Creation_and_usage_of_media_files?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Creation and usage of media files">Creation and usage</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Moving_files_to_Commons?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Moving files to Commons">Moving files to Commons</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Images?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Images">Images</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Introduction_to_images_with_Wiki_Markup/1?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Introduction to images with Wiki Markup/1">Introduction to images</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Pictures?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Pictures">Picture tutorial</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Preparing_images_for_upload?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Preparing images for upload">Preparing images for upload</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Uploading_images?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Uploading images">Uploading images</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Options_to_hide_an_image?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Options to hide an image">Options to hide an image</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Extended_image_syntax?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Extended image syntax">Extended image syntax</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:SVG_help?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:SVG help">SVG help</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Gallery_tag?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Gallery tag">Gallery tag</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Graphics_tutorials?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Graphics tutorials">Graphics tutorials</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Basic_bitmap_image_editing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Basic bitmap image editing">Basic bitmap image editing</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:How_to_improve_image_quality?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:How to improve image quality">How to improve image quality</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Graphics_Lab/Resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Graphics Lab/Resources">Graphics Lab resources</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Sound_file_markup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Sound file markup">Sound file markup</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Visual_file_markup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Visual file markup">Visual file markup</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%">Other graphics</th> <td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Family_trees?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Family trees">Family trees</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Graphs_and_charts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Graphs and charts">Graphs and charts</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:How_to_create_charts_for_Wikipedia_articles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:How to create charts for Wikipedia articles">How to create</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Barchart?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Barchart">Barcharts</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:To_scale_charts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:To scale charts">To scale charts</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Displaying_a_formula?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Displaying a formula">Math formulas</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Displaying_a_formula?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Use_of_HTML_templates" title="Help:Displaying a formula">Math symbols</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Score?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Score">Musical scores</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Musical_symbols?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Musical symbols">Musical symbols</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Timeline?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Timeline">Timeline</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:EasyTimeline_syntax?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:EasyTimeline syntax">EasyTimeline syntax</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:WikiHiero_syntax?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:WikiHiero syntax">WikiHiero syntax</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:A_quick_guide_to_templates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:A quick guide to templates">Templates</a> and<br><a href="https://en-m-wikipedia-org.translate.goog/wiki/Lua_(programming_language)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Lua (programming language)">Lua</a> modules</th> <td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Template?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Template">Templates</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Advanced_template_coding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Advanced template coding">Advanced template coding</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Template_documentation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Template documentation">Template documentation</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Template_index?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Template index">Template index</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Template_limits?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Template limits">Template limits</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Template_sandbox_and_test_cases?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Template sandbox and test cases">Template sandbox and test cases</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Citation_templates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Citation templates">Citation templates</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Lua?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Lua">Lua help</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Lua?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Lua">Lua project</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Lua/Resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Lua/Resources">Resources</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Lua/To_do?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Lua/To do">To do</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Substitution?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Substitution">Substitution</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Purge?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Purge">Purge</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Job_queue?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Job queue">Job queue</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Transclusion?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Transclusion">Transclusion</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Labeled_section_transclusion?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Labeled section transclusion">Labeled section</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Transclusion_costs_and_benefits?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Transclusion costs and benefits">Costs and benefits</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Guide_to_Scribbling?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Guide to Scribbling">Guide to Scribbling</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Administration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB#Data_structure_and_development" title="Wikipedia:Administration">Data structure</a></th> <td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Namespace?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Namespace">Namespaces</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:What_is_an_article%3F?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:What is an article?">Main/Article</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Category?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Category">Category</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Drafts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Drafts">Draft</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Files?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Files">File</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:File_description_page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:File description page">File description page</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Help_namespace?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Help namespace">Help</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Portal?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Portal">Portal</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Project_namespace?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Project namespace">Project/Wikipedia</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Talk_pages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Talk pages">Talk</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Archiving_a_talk_page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Archiving a talk page">Archiving</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Archiving_(plain_and_simple)?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Archiving (plain and simple)">Simple</a></li> </ul></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Template_namespace?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Template namespace">Template</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_pages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User pages">User</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_page_design_guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User page design guide">User page design</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:MediaWiki_namespace?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:MediaWiki namespace">MediaWiki</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bug_reports_and_feature_requests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bug reports and feature requests">Bug reports and feature requests</a></li> <li><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Extension:TimedMediaHandler" class="extiw" title="mw:Extension:TimedMediaHandler">TimedMediaHandler extension</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Lua?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Lua">Module</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Special_page?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Special page">Special</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/HTML?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="HTML">HTML</a> and <a href="https://en-m-wikipedia-org.translate.goog/wiki/CSS?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="CSS">CSS</a></th> <td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Cascading_Style_Sheets?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Cascading Style Sheets">Cascading Style Sheets</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:HTML_in_wikitext?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:HTML in wikitext">HTML in wikitext</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Catalogue_of_CSS_classes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Catalogue of CSS classes">Catalogue of CSS classes</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Common.js_and_common.css?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Common.js and common.css">Common.js and common.css</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Mxt/User_CSS_for_a_monospaced_coding_font?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Mxt/User CSS for a monospaced coding font">User CSS for monospaced coding font</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:WikiProject_Microformats/classes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:WikiProject Microformats/classes">Classes in microformats</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Markup_validation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Markup validation">Markup validation</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Span_tags?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Span tags">Span tags</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Useful_styles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Useful styles">Useful styles</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Customisation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Customisation">Customisation</a><br> and tools</th> <td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Preferences?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Preferences">Preferences</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Gadget?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Gadget">Gadgets</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Skin?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Skin">Skins</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Citation_tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Citation tools">Citation tools</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Cleaning_up_vandalism/Tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Cleaning up vandalism/Tools">Cleaning up vandalism tools</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Customizing_watchlists?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Customizing watchlists">Customizing watchlists</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:Hide_Pages_in_Watchlist?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:Hide Pages in Watchlist">Hide pages</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Scripts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Scripts">IRC Scripts</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_scripts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User scripts">User scripts</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_scripts/Guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User scripts/Guide">Guide</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_scripts/List?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User scripts/List">List</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_scripts/Techniques?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User scripts/Techniques">Techniques</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Help:User_style?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Help:User style">User style</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools">Tools</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Alternative_browsing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Alternative browsing">Alternative browsing</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Browser_tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Browser tools">Browser tools</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Editing_tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Editing tools">Editing tools</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Navigation_shortcuts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Navigation shortcuts">Navigation shortcuts</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Optimum_tool_set?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Optimum tool set">Optimum tool set</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Wikimedia_Cloud_Services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Wikimedia Cloud Services">Wikimedia Cloud Services</a></li> <li><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://www.mediawiki.org/wiki/Beta_Features" class="extiw" title="mw:Beta Features">Beta Features at MediaWiki</a></li> </ul> </div></td> </tr> <tr> <th scope="row" class="navbox-group" style="text-align: center;;width:1%">Automated editing</th> <td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"> <div style="padding:0 0.25em"> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:WikiProject_Articles_for_creation/Helper_script?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:WikiProject Articles for creation/Helper script">AfC helper script</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:AntiVandal?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:AntiVandal">AntiVandal</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:AutoWikiBrowser?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:AutoWikiBrowser">AutoWikiBrowser</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Bots">Bots</a> <ul> <li><a class="mw-selflink selflink">Creating</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:History_of_Wikipedia_bots?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:History of Wikipedia bots">history</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:HotCat?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:HotCat">HotCat</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Huggle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Huggle">Huggle</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Tools/Navigation_popups?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Tools/Navigation popups">Navigation popups</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:RedWarn?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:RedWarn">RedWarn</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Twinkle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Twinkle">Twinkle</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Ultraviolet?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Ultraviolet">Ultraviolet</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:WPCleaner?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:WPCleaner">WPCleaner</a></li> <li>Inactive <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:Igloo?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:Igloo">igloo</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:STiki?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:STiki">STiki</a></li> </ul></li> </ul> </div></td> </tr> <tr> <td class="navbox-abovebelow" colspan="2" style="text-align: center;"> <div> <ul> <li>See also: <b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Category:Wikipedia_how-to?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Category:Wikipedia how-to">Category:Wikipedia how-to</a></b></li> <li><b><a href="https://en-m-wikipedia-org.translate.goog/wiki/Category:Wikipedia_information_pages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Category:Wikipedia information pages">Category:Wikipedia information pages</a></b><br> Further navigation at: <a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Wikipedia_help_pages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Wikipedia help pages">Help pages</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Administrators%27_guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Administrators' guide">Administrators</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:WikiProject_Accessibility/Navigation_menu?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:WikiProject Accessibility/Navigation menu">Accessibility</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Wikipedia_accounts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Wikipedia accounts">Accounts</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Botnav?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Botnav">Bots</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Wikipedia_referencing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Wikipedia referencing">Referencing</a> <ul> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Citation_metadata_navbox?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Citation metadata navbox">Citation metadata</a></li> </ul></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Template:Wikipedia_templates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Template:Wikipedia templates">Templates</a></li> <li><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:User_scripts/Navbox?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB" title="Wikipedia:User scripts/Navbox">User scripts</a></li> </ul> </div></td> </tr> </tbody> </table> </div><!-- NewPP limit report Parsed by mw‐api‐int.codfw.main‐59fd4dfdc6‐rqmhz Cached time: 20241121043719 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] DiscussionTools time usage: 0.041 seconds CPU time usage: 0.398 seconds Real time usage: 0.523 seconds Preprocessor visited node count: 1112/1000000 Post‐expand include size: 52906/2097152 bytes Template argument size: 2620/2097152 bytes Highest expansion depth: 12/100 Expensive parser function count: 5/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 21551/5000000 bytes Lua time usage: 0.117/10.000 seconds Lua memory usage: 2825274/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 292.366 1 -total 25.34% 74.081 1 Template:Information_page 23.98% 70.119 1 Template:Botnav 23.41% 68.429 1 Template:Mbox 16.54% 48.350 1 Template:Wikipedia_technical_help 13.78% 40.275 2 Template:Namespace_detect 12.88% 37.658 2 Template:Flatlist 11.40% 33.335 2 Template:Ombox 10.56% 30.876 1 Template:Pp-move-indef 9.70% 28.351 1 Template:Shortcut --> <!-- Saved in parser cache with key enwiki:pcache:idhash:8354786-0!canonical and timestamp 20241121043719 and revision id 1258430277. Rendering was triggered because: api-parse --> </section> </div><!-- MobileFormatter took 0.014 seconds --><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --> <noscript> <img src="https://login.m.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1&amp;mobile=1" alt="" width="1" height="1" style="border: none; position: absolute;"> </noscript> <div class="printfooter" data-nosnippet=""> Retrieved from "<a dir="ltr" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DHelp:Creating_a_bot%26oldid%3D1258430277">https://en.wikipedia.org/w/index.php?title=Help:Creating_a_bot&amp;oldid=1258430277</a>" </div> </div> </div> <div class="post-content" id="page-secondary-actions"> </div> </main> <footer class="mw-footer minerva-footer" role="contentinfo"><a class="last-modified-bar" href="https://en-m-wikipedia-org.translate.goog/w/index.php?title=Help:Creating_a_bot&amp;action=history&amp;_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB"> <div class="post-content last-modified-bar__content"><span class="minerva-icon minerva-icon-size-medium minerva-icon--modified-history"></span> <span class="last-modified-bar__text modified-enhancement" data-user-name="John of Reading" data-user-gender="male" data-timestamp="1732039577"> <span>Last edited on 19 November 2024, at 18:06</span> </span> <span class="minerva-icon minerva-icon-size-small minerva-icon--expand"></span> </div></a> <div class="post-content footer-content"> <div id="p-lang"> <h4>Languages</h4> <section> <ul id="p-variants" class="minerva-languages"></ul> <ul class="minerva-languages"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://ar.wikipedia.org/wiki/%25D9%2588%25D9%258A%25D9%2583%25D9%258A%25D8%25A8%25D9%258A%25D8%25AF%25D9%258A%25D8%25A7:%25D9%2583%25D9%258A%25D9%2581_%25D8%25AA%25D8%25B5%25D9%2586%25D8%25B9_%25D8%25A8%25D9%2588%25D8%25AA" title="ويكيبيديا:كيف تصنع بوت – Arabic" lang="ar" hreflang="ar" data-title="ويكيبيديا:كيف تصنع بوت" data-language-autonym="العربية" data-language-local-name="Arabic" class="interlanguage-link-target"><span>العربية</span></a></li> <li class="interlanguage-link interwiki-az mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://az.wikipedia.org/wiki/Vikipediya:Botun_yarad%25C4%25B1lmas%25C4%25B1" title="Vikipediya:Botun yaradılması – Azerbaijani" lang="az" hreflang="az" data-title="Vikipediya:Botun yaradılması" data-language-autonym="Azərbaycanca" data-language-local-name="Azerbaijani" class="interlanguage-link-target"><span>Azərbaycanca</span></a></li> <li class="interlanguage-link interwiki-cv mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://cv.wikipedia.org/wiki/%25D0%2592%25D0%25B8%25D0%25BA%25D0%25B8%25D0%25BF%25D0%25B5%25D0%25B4%25D0%25B8:%25C3%2587%25D0%25B0%25D0%25BC%25D1%2580%25C4%2583%25D0%25BA_%25D0%25B1%25D0%25BE%25D1%2582%25C3%25A7%25C4%2583_%25D0%25B2%25D0%25B0%25D0%25BB%25D0%25BB%25D0%25B8_%25D1%2581%25C4%2595%25D0%25BD%25D3%25B3%25D1%2581%25D0%25B5%25D0%25BC" title="Википеди:Çамрăк ботçă валли сĕнӳсем – Chuvash" lang="cv" hreflang="cv" data-title="Википеди:Çамрăк ботçă валли сĕнӳсем" data-language-autonym="Чӑвашла" data-language-local-name="Chuvash" class="interlanguage-link-target"><span>Чӑвашла</span></a></li> <li class="interlanguage-link interwiki-es mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://es.wikipedia.org/wiki/Ayuda:C%25C3%25B3mo_crear_un_bot" title="Ayuda:Cómo crear un bot – Spanish" lang="es" hreflang="es" data-title="Ayuda:Cómo crear un bot" data-language-autonym="Español" data-language-local-name="Spanish" class="interlanguage-link-target"><span>Español</span></a></li> <li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://fa.wikipedia.org/wiki/%25D9%2588%25DB%258C%25DA%25A9%25DB%258C%25E2%2580%258C%25D9%25BE%25D8%25AF%25DB%258C%25D8%25A7:%25DA%2586%25DA%25AF%25D9%2588%25D9%2586%25D9%2587_%25DB%258C%25DA%25A9_%25D8%25B1%25D8%25A8%25D8%25A7%25D8%25AA_%25D8%25A8%25D8%25B3%25D8%25A7%25D8%25B2%25DB%258C%25D9%2585" title="ویکی‌پدیا:چگونه یک ربات بسازیم – Persian" lang="fa" hreflang="fa" data-title="ویکی‌پدیا:چگونه یک ربات بسازیم" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li> <li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://fr.wikipedia.org/wiki/Wikip%25C3%25A9dia:Cr%25C3%25A9er_un_bot" title="Wikipédia:Créer un bot – French" lang="fr" hreflang="fr" data-title="Wikipédia:Créer un bot" data-language-autonym="Français" data-language-local-name="French" class="interlanguage-link-target"><span>Français</span></a></li> <li class="interlanguage-link interwiki-gl mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://gl.wikipedia.org/wiki/Axuda:Usar_bots" title="Axuda:Usar bots – Galician" lang="gl" hreflang="gl" data-title="Axuda:Usar bots" data-language-autonym="Galego" data-language-local-name="Galician" class="interlanguage-link-target"><span>Galego</span></a></li> <li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://ko.wikipedia.org/wiki/%25EB%258F%2584%25EC%259B%2580%25EB%25A7%2590:%25EB%25B4%2587_%25EB%25A7%258C%25EB%2593%25A4%25EA%25B8%25B0" title="도움말:봇 만들기 – Korean" lang="ko" hreflang="ko" data-title="도움말:봇 만들기" data-language-autonym="한국어" data-language-local-name="Korean" class="interlanguage-link-target"><span>한국어</span></a></li> <li class="interlanguage-link interwiki-hi mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://hi.wikipedia.org/wiki/%25E0%25A4%25B5%25E0%25A4%25BF%25E0%25A4%2595%25E0%25A4%25BF%25E0%25A4%25AA%25E0%25A5%2580%25E0%25A4%25A1%25E0%25A4%25BF%25E0%25A4%25AF%25E0%25A4%25BE:%25E0%25A4%25AC%25E0%25A5%2589%25E0%25A4%259F_%25E0%25A4%25AC%25E0%25A4%25A8%25E0%25A4%25BE%25E0%25A4%25A8%25E0%25A5%2587_%25E0%25A4%2595%25E0%25A5%2580_%25E0%25A4%25AA%25E0%25A5%258D%25E0%25A4%25B0%25E0%25A4%2595%25E0%25A5%258D%25E0%25A4%25B0%25E0%25A4%25BF%25E0%25A4%25AF%25E0%25A4%25BE" title="विकिपीडिया:बॉट बनाने की प्रक्रिया – Hindi" lang="hi" hreflang="hi" data-title="विकिपीडिया:बॉट बनाने की प्रक्रिया" data-language-autonym="हिन्दी" data-language-local-name="Hindi" class="interlanguage-link-target"><span>हिन्दी</span></a></li> <li class="interlanguage-link interwiki-hr mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://hr.wikipedia.org/wiki/Wikipedija:Botovi/Bot" title="Wikipedija:Botovi/Bot – Croatian" lang="hr" hreflang="hr" data-title="Wikipedija:Botovi/Bot" data-language-autonym="Hrvatski" data-language-local-name="Croatian" class="interlanguage-link-target"><span>Hrvatski</span></a></li> <li class="interlanguage-link interwiki-id mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://id.wikipedia.org/wiki/Bantuan:Bot" title="Bantuan:Bot – Indonesian" lang="id" hreflang="id" data-title="Bantuan:Bot" data-language-autonym="Bahasa Indonesia" data-language-local-name="Indonesian" class="interlanguage-link-target"><span>Bahasa Indonesia</span></a></li> <li class="interlanguage-link interwiki-ka mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://ka.wikipedia.org/wiki/%25E1%2583%2595%25E1%2583%2598%25E1%2583%2599%25E1%2583%2598%25E1%2583%259E%25E1%2583%2594%25E1%2583%2593%25E1%2583%2598%25E1%2583%2590:%25E1%2583%2591%25E1%2583%259D%25E1%2583%25A2%25E1%2583%2598%25E1%2583%25A1_%25E1%2583%25A8%25E1%2583%2594%25E1%2583%25A5%25E1%2583%259B%25E1%2583%259C%25E1%2583%2590" title="ვიკიპედია:ბოტის შექმნა – Georgian" lang="ka" hreflang="ka" data-title="ვიკიპედია:ბოტის შექმნა" data-language-autonym="ქართული" data-language-local-name="Georgian" class="interlanguage-link-target"><span>ქართული</span></a></li> <li class="interlanguage-link interwiki-mk mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://mk.wikipedia.org/wiki/%25D0%2592%25D0%25B8%25D0%25BA%25D0%25B8%25D0%25BF%25D0%25B5%25D0%25B4%25D0%25B8%25D1%2598%25D0%25B0:%25D0%25A1%25D0%25BE%25D0%25B7%25D0%25B4%25D0%25B0%25D0%25B2%25D0%25B0%25D1%259A%25D0%25B5_%25D0%25BD%25D0%25B0_%25D0%25B1%25D0%25BE%25D1%2582" title="Википедија:Создавање на бот – Macedonian" lang="mk" hreflang="mk" data-title="Википедија:Создавање на бот" data-language-autonym="Македонски" data-language-local-name="Macedonian" class="interlanguage-link-target"><span>Македонски</span></a></li> <li class="interlanguage-link interwiki-ps mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://ps.wikipedia.org/wiki/%25D9%2588%25D9%258A%25DA%25A9%25D9%258A%25D9%25BE%25DB%2590%25DA%2589%25D9%258A%25D8%25A7:%25D9%2588%25D9%258A%25DA%25A9%25D9%258A_%25D8%25B1%25D9%2588%25D8%25A8%25D8%25A7%25D9%25BC_%25DA%2585%25D9%2586%25DA%25AB%25D9%2587_%25D8%25AC%25D9%2588%25DA%2593_%25DA%25A9%25DA%2593%25D9%2588" title="ويکيپېډيا:ويکي روباټ څنګه جوړ کړو – Pashto" lang="ps" hreflang="ps" data-title="ويکيپېډيا:ويکي روباټ څنګه جوړ کړو" data-language-autonym="پښتو" data-language-local-name="Pashto" class="interlanguage-link-target"><span>پښتو</span></a></li> <li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://pt.wikipedia.org/wiki/Wikip%25C3%25A9dia:Como_criar_um_rob%25C3%25B4" title="Wikipédia:Como criar um robô – Portuguese" lang="pt" hreflang="pt" data-title="Wikipédia:Como criar um robô" data-language-autonym="Português" data-language-local-name="Portuguese" class="interlanguage-link-target"><span>Português</span></a></li> <li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://ru.wikipedia.org/wiki/%25D0%2592%25D0%25B8%25D0%25BA%25D0%25B8%25D0%25BF%25D0%25B5%25D0%25B4%25D0%25B8%25D1%258F:%25D0%25A0%25D0%25B5%25D0%25BA%25D0%25BE%25D0%25BC%25D0%25B5%25D0%25BD%25D0%25B4%25D0%25B0%25D1%2586%25D0%25B8%25D0%25B8_%25D1%258E%25D0%25BD%25D0%25BE%25D0%25BC%25D1%2583_%25D0%25B1%25D0%25BE%25D1%2582%25D0%25BE%25D0%25B2%25D0%25BE%25D0%25B4%25D1%2583" title="Википедия:Рекомендации юному ботоводу – Russian" lang="ru" hreflang="ru" data-title="Википедия:Рекомендации юному ботоводу" data-language-autonym="Русский" data-language-local-name="Russian" class="interlanguage-link-target"><span>Русский</span></a></li> <li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://sr.wikipedia.org/wiki/%25D0%2592%25D0%25B8%25D0%25BA%25D0%25B8%25D0%25BF%25D0%25B5%25D0%25B4%25D0%25B8%25D1%2598%25D0%25B0:%25D0%259F%25D1%2580%25D0%25B0%25D0%25B2%25D1%2599%25D0%25B5%25D1%259A%25D0%25B5_%25D0%25B1%25D0%25BE%25D1%2582%25D0%25B0" title="Википедија:Прављење бота – Serbian" lang="sr" hreflang="sr" data-title="Википедија:Прављење бота" data-language-autonym="Српски / srpski" data-language-local-name="Serbian" class="interlanguage-link-target"><span>Српски / srpski</span></a></li> <li class="interlanguage-link interwiki-sv badge-Q70894304 mw-list-item" title=""><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://sv.wikipedia.org/wiki/Wikipedia:Skaffa_bot" title="Wikipedia:Skaffa bot – Swedish" lang="sv" hreflang="sv" data-title="Wikipedia:Skaffa bot" data-language-autonym="Svenska" data-language-local-name="Swedish" class="interlanguage-link-target"><span>Svenska</span></a></li> <li class="interlanguage-link interwiki-tt mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://tt.wikipedia.org/wiki/%25D0%2592%25D0%25B8%25D0%25BA%25D0%25B8%25D0%25BF%25D0%25B5%25D0%25B4%25D0%25B8%25D1%258F:%25D0%2591%25D0%25BE%25D1%2582_%25D1%2583%25D1%2580%25D0%25BD%25D0%25B0%25D1%2588%25D1%2582%25D1%258B%25D1%2580%25D1%2583_%25D2%25BB%25D3%2599%25D0%25BC_%25D0%25BA%25D1%2583%25D0%25BB%25D0%25BB%25D0%25B0%25D0%25BD%25D1%2583" title="Википедия:Бот урнаштыру һәм куллану – Tatar" lang="tt" hreflang="tt" data-title="Википедия:Бот урнаштыру һәм куллану" data-language-autonym="Татарча / tatarça" data-language-local-name="Tatar" class="interlanguage-link-target"><span>Татарча / tatarça</span></a></li> <li class="interlanguage-link interwiki-te mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://te.wikipedia.org/wiki/%25E0%25B0%25B5%25E0%25B0%25BF%25E0%25B0%2595%25E0%25B1%2580%25E0%25B0%25AA%25E0%25B1%2580%25E0%25B0%25A1%25E0%25B0%25BF%25E0%25B0%25AF%25E0%25B0%25BE:%25E0%25B0%25AC%25E0%25B0%25BE%25E0%25B0%259F%25E0%25B1%2581_%25E0%25B0%25B8%25E0%25B1%2583%25E0%25B0%25B7%25E0%25B1%258D%25E0%25B0%259F%25E0%25B0%25BF%25E0%25B0%2582%25E0%25B0%259A%25E0%25B0%25A1%25E0%25B0%2582_%25E0%25B0%258E%25E0%25B0%25B2%25E0%25B0%25BE%253F" title="వికీపీడియా:బాటు సృష్టించడం ఎలా? – Telugu" lang="te" hreflang="te" data-title="వికీపీడియా:బాటు సృష్టించడం ఎలా?" data-language-autonym="తెలుగు" data-language-local-name="Telugu" class="interlanguage-link-target"><span>తెలుగు</span></a></li> <li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://tr.wikipedia.org/wiki/Yard%25C4%25B1m:Bot_olu%25C5%259Fturma" title="Yardım:Bot oluşturma – Turkish" lang="tr" hreflang="tr" data-title="Yardım:Bot oluşturma" data-language-autonym="Türkçe" data-language-local-name="Turkish" class="interlanguage-link-target"><span>Türkçe</span></a></li> <li class="interlanguage-link interwiki-ur mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://ur.wikipedia.org/wiki/%25D9%2585%25D9%2586%25D8%25B5%25D9%2588%25D8%25A8%25DB%2581:PHP_bot_framework_table" title="منصوبہ:PHP bot framework table – Urdu" lang="ur" hreflang="ur" data-title="منصوبہ:PHP bot framework table" data-language-autonym="اردو" data-language-local-name="Urdu" class="interlanguage-link-target"><span>اردو</span></a></li> <li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://vi.wikipedia.org/wiki/Wikipedia:T%25E1%25BA%25A1o_bot" title="Wikipedia:Tạo bot – Vietnamese" lang="vi" hreflang="vi" data-title="Wikipedia:Tạo bot" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnamese" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li> <li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://zh-yue.wikipedia.org/wiki/Help:%25E6%25A9%259F%25E6%25A2%25B0%25E4%25BA%25BA" title="Help:機械人 – Cantonese" lang="yue" hreflang="yue" data-title="Help:機械人" data-language-autonym="粵語" data-language-local-name="Cantonese" class="interlanguage-link-target"><span>粵語</span></a></li> <li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://zh.wikipedia.org/wiki/Wikipedia:%25E8%25A3%25BD%25E4%25BD%259C%25E6%25A9%259F%25E5%2599%25A8%25E4%25BA%25BA" title="Wikipedia:製作機器人 – Chinese" lang="zh" hreflang="zh" data-title="Wikipedia:製作機器人" data-language-autonym="中文" data-language-local-name="Chinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> </section> </div> <div class="minerva-footer-logo"> <img src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" alt="Wikipedia" width="120" height="18" style="width: 7.5em; height: 1.125em;"> </div> <ul id="footer-info" class="footer-info hlist hlist-separated"> <li id="footer-info-lastmod">This page was last edited on 19 November 2024, at 18:06<span class="anonymous-show">&nbsp;(UTC)</span>.</li> <li id="footer-info-copyright">Content is available under <a class="external" rel="nofollow" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://creativecommons.org/licenses/by-sa/4.0/deed.en">CC BY-SA 4.0</a> unless otherwise noted.</li> </ul> <ul id="footer-places" class="footer-places hlist hlist-separated"> <li id="footer-places-privacy"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:About?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="https://en-m-wikipedia-org.translate.goog/wiki/Wikipedia:General_disclaimer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=en-GB">Disclaimers</a></li> <li id="footer-places-contact"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://stats.wikimedia.org/%23/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-terms-use"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://foundation.m.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use">Terms of Use</a></li> <li id="footer-places-desktop-toggle"><a id="mw-mf-display-toggle" href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=en-GB&amp;u=https://en.wikipedia.org/w/index.php?title%3DHelp:Creating_a_bot%26mobileaction%3Dtoggle_view_desktop" data-event-name="switch_to_desktop">Desktop</a></li> </ul> </div> </footer> </div> </div> <div class="mw-notification-area" data-mw="interface"></div><!-- v:8.3.1 --> <script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-rpq2w","wgBackendResponseTime":152,"wgDiscussionToolsPageThreads":[{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Why_would_I_need_to_create_a_bot?","replies":[]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Considerations_before_creating_a_bot","replies":[{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Reuse_existing_bots-Considerations_before_creating_a_bot","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Reuse_codebase-Considerations_before_creating_a_bot","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Important_questions-Considerations_before_creating_a_bot","replies":[]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-How_does_a_Wikipedia_bot_work?","replies":[{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Overview_of_operation-How_does_a_Wikipedia_bot_work?","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-APIs_for_bots-How_does_a_Wikipedia_bot_work?","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Logging_in-How_does_a_Wikipedia_bot_work?","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Editing;_edit_tokens-How_does_a_Wikipedia_bot_work?","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Edit_conflicts-How_does_a_Wikipedia_bot_work?","replies":[]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Overview_of_the_process_of_developing_a_bot","replies":[{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Idea-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Specification-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Software_architecture-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Implementation-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Testing-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Documentation-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Queries/Complaints-Overview_of_the_process_of_developing_a_bot","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Maintenance-Overview_of_the_process_of_developing_a_bot","replies":[]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-General_guidelines_for_running_a_bot","replies":[{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Bot_best_practices-General_guidelines_for_running_a_bot","replies":[]},{"headingLevel":3,"name":"h-","type":"heading","level":0,"id":"h-Common_bot_features_you_should_consider_implementing-General_guidelines_for_running_a_bot","replies":[{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Manual_assistance-Common_bot_features_you_should_consider_implementing","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Disabling_the_bot-Common_bot_features_you_should_consider_implementing","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Signature-Common_bot_features_you_should_consider_implementing","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Bot_Flag-Common_bot_features_you_should_consider_implementing","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Monitoring_the_bot_status-Common_bot_features_you_should_consider_implementing","replies":[]}]}]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Open-source_bots","replies":[]},{"headingLevel":2,"name":"h-","type":"heading","level":0,"id":"h-Programming_languages_and_libraries","replies":[{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Awk-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Perl-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-PHP-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Python-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-MATLAB-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Microsoft_.NET-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Java-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Node.js-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Ruby-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Common_Lisp-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Haskell-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-VBScript-Programming_languages_and_libraries","replies":[]},{"headingLevel":4,"name":"h-","type":"heading","level":0,"id":"h-Lua-Programming_languages_and_libraries","replies":[]}]}],"wgPageParseReport":{"discussiontools":{"limitreport-timeusage":"0.041"},"limitreport":{"cputime":"0.398","walltime":"0.523","ppvisitednodes":{"value":1112,"limit":1000000},"postexpandincludesize":{"value":52906,"limit":2097152},"templateargumentsize":{"value":2620,"limit":2097152},"expansiondepth":{"value":12,"limit":100},"expensivefunctioncount":{"value":5,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":21551,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 292.366 1 -total"," 25.34% 74.081 1 Template:Information_page"," 23.98% 70.119 1 Template:Botnav"," 23.41% 68.429 1 Template:Mbox"," 16.54% 48.350 1 Template:Wikipedia_technical_help"," 13.78% 40.275 2 Template:Namespace_detect"," 12.88% 37.658 2 Template:Flatlist"," 11.40% 33.335 2 Template:Ombox"," 10.56% 30.876 1 Template:Pp-move-indef"," 9.70% 28.351 1 Template:Shortcut"]},"scribunto":{"limitreport-timeusage":{"value":"0.117","limit":"10.000"},"limitreport-memusage":{"value":2825274,"limit":52428800}},"cachereport":{"origin":"mw-api-int.codfw.main-59fd4dfdc6-rqmhz","timestamp":"20241121043719","ttl":2592000,"transientcontent":false}}});});</script> <script>(window.NORLQ=window.NORLQ||[]).push(function(){var ns,i,p,img;ns=document.getElementsByTagName('noscript');for(i=0;i<ns.length;i++){p=ns[i].nextSibling;if(p&&p.className&&p.className.indexOf('lazy-image-placeholder')>-1){img=document.createElement('img');img.setAttribute('src',p.getAttribute('data-src'));img.setAttribute('width',p.getAttribute('data-width'));img.setAttribute('height',p.getAttribute('data-height'));img.setAttribute('alt',p.getAttribute('data-alt'));p.parentNode.replaceChild(img,p);}}});</script> <script>function gtElInit() {var lib = new google.translate.TranslateService();lib.translatePage('en', 'en', function () {});}</script> <script src="https://translate.google.com/translate_a/element.js?cb=gtElInit&amp;hl=en-GB&amp;client=wt" type="text/javascript"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10