EarwigBot jest robotem Pythona, który edytuje Wikipedię i wchodzi w interakcje z ludźmi ponad IRC. & Nbsp; Ten plik zawiera podstawowe informacje potrzebne do instalacji i konfiguracji bota; Więcej szczegółowych informacji znajduje się w katalogu / docs (dostępna online pod PyPI).
Historia
Rozwój rozpoczął się w oparciu o ramy Pywikipedia, na początku 2009 r Aprobata dla jego pięści zadania, detektor naruszenie praw autorskich, przeprowadzono w maju i bot jest realizowany konsekwentnie od czasu (z wyjątkiem stycznia / lutego 2011). Obecnie zajmuje kilka bieżących zadań, od pokolenia statystyki do kategorii czyszczenia i zadań na żądanie, takich jak WikiProject szablonu tagowania. Ponieważ zaczął uciekać, bot dokonał ponad 50.000 edycji.
Projekt przepisać go od nowa zaczął się na początku kwietnia 2011 roku, tym samym odejście od ram Pywikipedia i umożliwiając mniej ogólnej kodu, lepszej integracji części botów i ułatwia konserwację.
instalacji
Pakiet ten zawiera earwigbot rdzenia, wydobywane na tyle, że powinien on być użyteczny i konfigurowalny przez nikogo systemem bota na miejscu MediaWiki. Ponieważ jest składnikiem na bazie składników IRC może być wyłączony w razie potrzeby. Komendy IRC i zadania bot szczególne do mojego instancji EarwigBot, że nie czuję się przeciętnemu użytkownikowi będzie musiał są dostępne w repozytorium earwigbot-plugins.
Zaleca się przeprowadzanie testów jednostkowych bota przed instalacją. Uruchom testy setup.py Pythona z katalogu głównego projektu. Zauważ, że niektóre testy wymagają połączenia z internetem, a inni może trochę potrwać, aby uruchomić. Pokrycie jest obecnie raczej niepełna.
Ustawienia
Bot przechowuje swoje dane w "roboczy katalog", w tym jego pliku konfiguracyjnym i baz danych. Jest to również miejsce, w którym można umieścić polecenia niestandardowe bot IRC i zadań, które zostaną wyjaśnione później. Nie ma znaczenia, gdzie ten katalog jest, tak długo, jak bot może napisać do niego.
Uruchom bota z drogi earwigbot / do / pracy / dir, lub po prostu earwigbot jeśli katalog roboczy jest katalog bieżący. Będzie on zauważył, że nie ma pliku config.yml istnieje i zabierze Cię przez proces instalacji.
Nie ma obecnie możliwości, aby edytować plik config.yml z poziomu bota po to został stworzony, ale YAML jest bardzo proste formy, więc powinieneś być w stanie samodzielnie dokonać niezbędnych zmian. Sprawdź wyjaśnienie YAML na Wikipedii o pomoc.
Po instalacji, bot zacznie. Oznacza to, że połączenia z serwerami IRC zostało skonfigurowane do, zadań Harmonogram botów do uruchomienia w określonym czasie, a następnie czekać na instrukcje (jak polecenia na IRC). Aby uzyskać listę poleceń, powiedzieć "Pomocy!" (Polecenia są wiadomości poprzedzone wykrzyknikiem).
Możesz zatrzymać bota w dowolnym momencie z CONTROL + C, sam jak normalny program zatrzymać Python i będzie starał się bezpiecznie wyjść. Można również użyć polecenia "! Quit" na IRC.
Dostosowywanie
Katalog roboczy bot zawiera podkatalog podkatalogu poleceń i zadań. Komendy IRC może być umieszczony w pierwszej, a niestandardowe zadania wiki bot przejść do ostatniego. Opracowanie modułów niestandardowych jest wyjaśnione poniżej, a bardziej szczegółowo poprzez dokumentacji bota na PyPI (lub w katalogu docs /).
Należy pamiętać, że polecenia niestandardowe zastąpi wbudowanych poleceń i zadań o tej samej nazwie.
Bot i BotConfig
earwigbot.bot.Bot jest główną klasą EarwigBot za. Nie masz instancję to samemu, ale dobrze jest zapoznać się z jego atrybutów i metod, ponieważ jest to główny sposób komunikacji z innymi częściami bota. Obiekt Bot jest dostępny jako atrybut poleceń i zadań (tj self.bot).
earwigbot.config.BotConfig przechowuje informacje o konfiguracji dla bota. Jego docstring wyjaśnia, co każdy atrybut jest używany do, ale zasadniczo każdy "węzeł" (jeden z config.components, wiki, IRC, poleceń, zadań i metadane) mapy do sekcji pliku config.yml bota. Na przykład, jeśli config.yml zawiera coś podobnego:
IRC:
& Nbsp; nakładka:
& Nbsp; nick: MyAwesomeBot
& nbsp; kanały:
& Nbsp; - "## earwigbot"
& Nbsp; - "# kanał"
& Nbsp; - "# inne kanały"
... Wtedy config.irc ["nakładka"] ["nick"] będzie "MyAwesomeBot" i config.irc ["Frontend"] ["kanały"] będzie ["## earwigbot", "# kanał", "# inne kanały"].
Komendy IRC
Polecenia niestandardowe są podklasy earwigbot.commands.Command które zastępują proces dowództwa () (i ewentualnie wyboru () lub Ustawienia ()) metody.
Bot ma szeroki wybór wbudowanych komend i pluginów do działania jako przykładowy kod i / lub dać pomysły. Start z testu, a następnie sprawdzić chanops i afc_status dla niektórych bardziej skomplikowanych skryptów.
Zadania niestandardowe bot
Zadania niestandardowe są podklasy earwigbot.tasks.Task które zastępują uruchomienia zadania w () (i opcjonalnie konfiguracji ()) metody.
Zobacz wbudowaną wikiproject_tagger zadanie dla stosunkowo prostego zadania, lub afc_statistics plugin bardziej skomplikowaną.
Wiki Toolset
Odpowiedź EarwigBot do ram Pywikipedia jest Wiki Toolset (earwigbot.wiki), które można uzyskać dostęp głównie poprzez bot.wiki.
bot.wiki udostępnia trzy metody zarządzania Strony - get_site (), add_site () i remove_site (). Witryny są obiekty, które po prostu reprezentują stronę MediaWiki. Oczekuje się, że pojedynczy przypadek EarwigBot (czyli jednym katalogu roboczego) odnosić się do jednej strony lub grupy stron wykorzystujących ten sam login (jak wszystkich wiki WMF z CentralAuth).
Załaduj domyślną stronę (tę, którą odebrał podczas instalacji) w miejscu = bot.wiki.get_site ().
Nie wszystkie aspekty zestawu narzędzi są ujęte w pomocy. Poznaj swój kod i docstrings, aby dowiedzieć się, jak używać go w bardziej praktycznego mody. Dla porównania, bot.wiki jest instancją earwigbot.wiki.SitesDB przywiązane do pliku sites.db w katalogu roboczym bota p>
Wymagania .
- Python
Komentarze nie znaleziono