Wikipédia:Pywikibot
Ezen az oldalon egy technikai leírást olvashatsz a Wikipédia szerkesztéséről. Tartsd szem előtt, hogy nem minden ajánlott, ami technikailag megvalósítható! |
|
Ha segítségre van szükséged a pywikipediás botod beállításával kapcsolatban, segítséget kaphatsz angolul a #pywikibot IRC-csatornán vagy a levelezőlistán. • Egyszerűbb esetben magyarul is tudunk segíteni a botgazdák vitalapján. |
Pywikibot | |
Legfrissebb stabil kiadás | 9.6.1 (stabil verzió, 2024. december 13.)[1] |
Programozási nyelv | Python |
Operációs rendszer | platformfüggetlen |
Kategória |
|
Licenc | MIT-licenc |
A Pywikibot weboldala |
A Pywikibot (régebbi nevein Python Wikipedia Robot Framework, Pywikipediabot vagy Pywikipedia) olyan botszkriptek gyűjteménye, amelyekkel különböző feladatokat lehet elvégezni a Wikipédián és más MediaWiki-alapú wikiken. Ebben a keretrendszerben működik a Wikipédián futó időzített botok többsége. A Pywikibotot Python nyelven írták, számos fejlesztő közreműködésével. Ezen a lapon a botot futtatni szándékozó szerkesztők találhatnak fontos információkat.
A bot beindítása
szerkesztésLetöltés
szerkesztésA bot használatához a bot szoftverére és a Python legalább 3.6.1-es verziójára lesz szükséged.
A Python néhány Unix-disztribúción alapértelmezettként jelen van, ez esetben csak akkor kell frissítened, ha túl régi verzióval rendelkezel. Minden más esetben a http://www.python.org/download/ címről töltheted le. A Python minden ismertebb operációs rendszeren képes futni (pl. Unix, Linux, Mac, Windows).
A bot szoftverének legfrissebb változata elérhető Git segítségével vagy tömörített állományként.
- A tömörített állományok (zip, tar.gz) letöltése egyszerűbb, azonban a frissítés némileg bonyolultabb. Letöltés után csak ki kell csomagolni. (Python ehhez is kell.)
- Ha fejleszteni is szeretnéd a Pywikibotot, akkor feltétlenül gites hozzáférésre lesz szükséged. Terminálablakból futtatható Git Linuxon általában elérhető, Windowson telepíteni kell a Git for Windowst. Ha szeretnél egy könnyen használható grafikus felületet is, akkor jól jöhet még a TortoiseGit. Ha telepítve vannak a megfelelő szoftverek (Python, Git, opcionálisan a TortoiseGit), akkor klónozni kell a legfrissebb Pywikibotot (ez frissebb, mint a tömörítve letölthető stabil verziók). A klónozás menete TortoiseGit segítségével a következő:
- Keresel egy szimpatikus mappát, ahova majd a bot mappája fog kerülni.
- Jobb gombbal kattintasz egy üres helyre, majd a Git Klónozás… (angolul Git Clone…) menüpontot választod.
- URL: https://gerrit.wikimedia.org/r/p/pywikibot/core.git (ez ún. anonim URL, ha szeretnél beküldeni fejlesztést, akkor érdemes névre szóló változatot klónozni), a mappanév átírható.
- Ha van régi user-config.py vagy egyéb fájlod, akkor másold bele az újonnan létrejött mappába.
- A jövőben időnként (pár naponta) szinkronizáld a Pywikidet a helyi menüből elérhető Git Szinkronizálás… (Git Sync…) paranccsal.
Beállítás
szerkesztésBeállítás a Wikipédiához
szerkesztésLegegyszerűbben úgy készíthető el a beállításfájl, ha parancssorból/terminálból futtatod a generate_user_files.py fájlt (ha nem Windowst használsz, akkor kötelező a fájlnév elé írni – operációs rendszertől függően – a python vagy python3 szót, Windowson elhagyható). Ha ez valamiért nem működik, akkor a következő leírás alapján készítheted el a konfigurációt.
Nyiss meg egy UTF-8-kompatibilis szövegszerkesztő programot (pl. Notepad++), és írd be ezt a pár sort:
use_api = True
family = 'wikipedia'
mylang = 'hu'
usernames['wikipedia']['hu'] = 'Bot neve'
ahol Bot neve az a felhasználónév, ami alatt a bot szerkesztései megjelennek majd a Wikipédián. Ha több wikin is használni akarod a botot, az utolsó sorhoz hasonló alakban add meg az ottani felhasználóneveidet is, pl.:
usernames['wikipedia']['hu'] = 'Botorkáló'
usernames['wikipedia']['en'] = 'Botológus'
usernames['wiktionary']['de'] = 'Botladozó'
Ilyenkor a 2. és 3. sor átírásával befolyásolhatod, hogy éppen melyik wikin fog futni a bot (vagy felülírhatod az itteni beállításokat parancssori paraméterekkel is).
Mentsd el a szövegfájlt user-config.py
néven a pywikibot főmappájába (ahol a pwb.py is található). Ügyelj rá, hogy UTF-8 módban mentsd el (Notepad++ esetén mentés előtt használd a menü Format/Convert to UTF-8 without BOM parancsát)!
Windows alatt arra is érdemes figyelni, hogy a parancssori ablak beállításainál ne a raszteres, hanem a Consolas vagy Lucida betűtípus legyen megadva (Windows 7).
Ha saját szkripteket is akarsz írni, és nem a bot userscripts könyvtárában tartanád őket, hozzá kell adnod a bot könyvtárát a Python-modulok betöltési útjához. Windows alatt ezt úgy érheted el, hogy a HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\<verziószám>\PythonPath
registry kulcs alá létrehozol egy új kulcsot pywikipedia
néven, és értékül a Pywikibot könyvtárát adod neki. Linux alatt egyszerűen csak be kell állítani a PYTHONPATH
környezeti változót (pl. az export PYTHONPATH=<pywikibot elérési út>
paranccsal).
Engedély kérése
szerkesztésA bot számára érdemes készíteni egy normál felhasználói nevet. Legjobb, ha olyat választasz, amely utal arra, hogy a felhasználó egy bot, és arra is, hogy te üzemelteted. Általában a saját felhasználói név és a „Bot” szó összevonásából készítik, de ez nincs megkötve.
Ha gyakran futtatsz egy botot, érdemes botstátuszt kérni a Wikipédia:Bürokraták üzenőfala/Botjelentkezés oldalon (illetve más wiki esetén az illető wiki megfelelő oldalán) néhány próbaszerkesztés után. Ekkor egy bürokrata elbírálja a kérelmedet, és ha nincsenek a botnak hibás szerkesztései és jogosnak találja azt, beállítja a botstátuszt. Ez azért hasznos, mert ekkor a bot nem árasztja el a friss változtatásokat gyors egymás utáni szerkesztéseivel, és a szerkesztései automatikusan megtekintettek lesznek (mintha megerősített szerkesztő lenne), nem kell egy járőrnek minden változtatást ellenőrizni.
Használat
szerkesztésBotszkript kiválasztása és futtatása
szerkesztésHa a fentiekkel megvagy, készen állsz a bot futtatására. Ehhez be kell hoznod az operációs rendszeredhez tartozó szöveges felületet (parancssort, terminált).
- Windowson a Start menü → Futtatás (angolul Run) pontjával tehető meg. A bejövő ablakban be kell írnod a futtatandó program nevét, „cmd”-t írj be (egyszerűen a Start menüben/Kezdőképernyőn is be lehet gépelni, az Enter lenyomására ugyanúgy megjelenik a parancssor). Ezután nyisd meg a bot könyvtárát a
cd C:\"a pywikibot letöltésének helye"
paranccsal. - Macen a Terminal.app-ra lesz szükséged a /Applications/Utilities-ből.
- Linuxon vagy bármelyik Unix-alapú rendszeren egy terminálra lesz szükséged.
Először futtasd le a login.py szkriptet a „python pwb.py login
” beírásával. Kérni fogja a jelszót, add meg azt, amit a botnak beállítottál. Erre azért van szükség, mivel a bot nem dolgozik névtelenül. Ha nem változtatod meg a jelszavadat, erre egyetlenegyszer lesz szükséged, mert a bot általában nem jelentkezik ki.
Ezután már bármelyik bot futtatható a „python pwb.py szkriptneve
” parancs beírásával (Windowson a „python” elhagyható).
Szkriptek
szerkesztésElsődleges botszkriptek | További botszkriptek | Segédprogramok | ||||
---|---|---|---|---|---|---|
|
|
| ||||
|
|
|
További szkriptek
szerkesztésA magyar Wikipédia botgazdái által írt modulokat az Egyedi fejlesztésű Pywikipedia-kódok kategóriában találod meg, ahonnan az interwikik mentén más projektek szkriptjei is elérhetőek. Ha saját készítésű szkripttel szeretnél dolgozni, te is ehhez hasonlóan teheted közzé.
Vedd figyelembe, hogy a régóta távollevő botgazdák programjai esetenként elavultak lehetnek, és nem biztos, hogy változtatás nélkül együttműködnek a Pywikibot jelenlegi verziójával.
A botwikin is találhatsz továbbiakat: botwiki:Template:Script.
Parancssori argumentumok
szerkesztésHabár a botszkriptek rendelkeznek saját argumentumokkal, mindegyikkel használható a következő néhány:
- -help
- megjeleníti, hogy milyen paraméterekkel használható a bot.
- -lang:xx
- ezzel lehet beállítani, hogy melyik wikiben szeretnél dolgozni, ha nem a
user-config.py
-ban beállítotton szeretnél. - -family:xyz
- ezzel állíthatod be, hogy mely wiki-típuson dolgozol, pl. wikipedia, wiktionary, wikitravel, ... (ez is felülírja a
user-config.py
-ban megadottakat). - -log
- naplózás engedélyezése. A naplók a logs alkönyvtárban tárolódnak.
- -log:xyz
- naplózás az xyz helyén megadott nevű fájlba.
- -nolog
- naplózás kikapcsolása (alapértelmezésben be van kapcsolva).
- -putthrottle:nn
- azon minimális idő (másodpercekben), amennyit várakozzon a bot két lap elmentése között. Az alapértelmezett érték nulla.
Például a python szkriptneve.py -family:wiktionary
a Wikiszótárban futtatja a botot, az alapértelmezett konfigurációt figyelmen kívül hagyva.
A különböző szkriptek parancssori argumentumait megtalálod az egyes fájlokban, ha azokat jegyzettömbbel vagy más szövegszerkesztővel megnyitod, illetve a -help
argumentummal indítva a szkripteket kiírják azokat a képernyőre.
Interaktív használat haladóknak
szerkesztésA botot nemcsak scriptek futtatására, hanem alkalmi feladatok megoldására is használhatjuk, amire éppen nincs kész script. Ehhez már kell némi háttérismeret.
Lásd még
szerkesztésLevelezőlisták
szerkesztésA bot használatával kapcsolatban jelenleg négy angol nyelvű levelezőlista üzemel:
- pywikibot: felhasználók eszmecseréje (normál forgalommal)
- pywikibot-announce: fontos közlemények (csekély forgalommal). Minden angolul beszélő botgazdának javasolt feliratkoznia rá!
- pywikibot-commits: automata üzenetek a programkód változásairól (nagy forgalommal). A reakciók a pywikipedia-l listára érkeznek.
- pywikibot-bugs: automata üzenetek a hibákról (nagy forgalommal)
A korábbi levelezőlistát 2009 áprilisában osztották négy részre, hogy áttekinthetőbb legyen. (Részletek itt.)
Dokumentáció
szerkesztés- (angolul) mw:Manual:Pywikibot
- (angolul) mw:Manual:Pywikibot/Cookbook
- ↑ https://github.com/wikimedia/pywikibot/releases/tag/9.6.1, 2024. december 14.