Pywikibot (często skracany do PWB) to jedno z najpopularniejszych narzędzi do tworzenia botów dostępnych dla użytkowników.
Ten poradnik to kompleksowe wprowadzenie do instalacji i uruchamiania Pywikibota na wiki Fandom/Gamepedia w systemie Windows.
Pierwsze uruchomienie
- Pobierz i zainstaluj Pythona. Najlepiej wybrać najnowszą wersję, ale każda wersja z serii 3.x powinna działać. Wygodnie jest pobrać instalator (.exe).
- Pobierz bibliotekę Requests. Jest ona wymagana, aby PWB działał. Rozpakuj paczkę w dowolne miejsce i (opcjonalnie) zmień nazwę folderu na wygodniejszą.
- Otwórz Wiersz polecenia (Windows+R → wpisz
cmd).- Za pomocą polecenia
cdprzejdź do folderu, w którym znajduje się pliksetup.pybiblioteki Requests. Przykład:cd Downloads\requests. - Zainstaluj bibliotekę wpisując:
py setup.py install.
- Za pomocą polecenia
Jeśli pojawi się błąd o braku uprawnień, uruchom Wiersz polecenia jako administrator i powtórz kroki.
- Pobierz Pywikibota i wypakuj go w dowolne miejsce (np.
C:\Users\nazwa\PWB). To będzie Twój główny folder Pywikibota.
Dodanie hasła bota
Figure 1: Bot name (green), account name (blue), and bot password (red)
Aby PWB mógł się zalogować, musisz utworzyć specjalne dane logowania — BotPassword. To hasło jest używane wyłącznie przez narzędzia zewnętrzne (nie w przeglądarce).
Po utworzeniu BotPassword:
- Przejdź do głównego folderu PWB.
- Utwórz plik o nazwie
user-password.py. - Otwórz go i wpisz dane w formacie:
("nazwa_konta", BotPassword("nazwa_botpassword", "haslo_botpassword"))
Przykład z ilustracji:
("MrBot5", BotPassword("testbot", "qscnb8pdpoisgibe8trfa59mv8ug1tat"))
- Nie musisz zapisywać hasła w pliku — ale jeśli tego nie zrobisz, będziesz musiał wpisywać je ręcznie za każdym razem.
- Wszystkie nazwy są rozróżniane wielkością liter.
Tworzenie pliku "family"
Pliki „family” określają, z jaką wiki pracuje PWB. Każda wiki wymaga oddzielnego pliku rodziny.
W głównym folderze PWB:
- przejdź do
pywikibot/families, - utwórz nowy plik kończący się na
_family.py, np.ark_family.py.
Wklej poniższy kod, zmieniając „ark” na nazwę swojej wiki:
from __future__ import absolute_import, division, unicode_literals
from pywikibot import family
from pywikibot.tools import deprecated
class Family(family.Family):
name = 'ark'
langs = {
'en': 'ark.fandom.com',
#'es': 'ark.fandom.com',
#'fr': 'ark.fandom.com',
#'ptbr': 'ark.fandom.com',
}
def scriptpath(self, code):
return {
'en': '',
'es': '/es',
'fr': '/fr',
'ptbr': '/pt-br',
}[code]
@deprecated('APISite.version()')
def version(self, code):
return '1.39.3'
def protocol(self, code):
return 'HTTPS'
Dodatkowe języki możesz odblokować usuwając komentarze. Listę kodów językowych znajdziesz tu: Help:Language codes.
Konfiguracja user-config
- Wróć do Wiersza polecenia i przejdź (
cd) do głównego folderu PWB. - Uruchom:
py generate_user_files.pyi postępuj zgodnie z instrukcjami. - W folderze pojawi się plik
user-config.py— otwórz go.
Przykład konfiguracji:
family = 'ark'
mylang = 'en'
usernames['ark']['en'] = u'MrBot5'
Jeśli używasz pliku z hasłami:
family = 'ark'
mylang = 'en'
password_file = "user-password.py"
usernames['*']['*'] = u'MrBot5'
sysopnames['*']['*'] = u'Mr_Pie_5'
sysopnamesjest wymagane tylko wtedy, gdy bot działa na koncie mającym uprawnienia administratora.- PWB pozwala mieć wiele użytkowników, ale tylko jedną linię sysopnames na rodzinę wiki.
Logowanie
Aby zalogować bota:
- Przejdź Wierszem polecenia do folderu Pywikibota.
- Wpisz:
py pwb.py login
Jeśli wszystko jest poprawnie skonfigurowane — bot się zaloguje.
Typowe problemy
- can't open file pwb.py – jesteś w złym folderze. Sprawdź lokalizację.
- Login failed (Aborted) – błąd w
user-password.pylub błędne hasło. - does not have read permissions – konto nie jest jeszcze autoconfirmed (czeka 4 dni).
Używanie Pywikibota
W Wierszu polecenia przejdź do folderu PWB.
Uruchamianie skryptów:
py pwb.py nazwaskryptu
Podgląd opcji:
py pwb.py nazwaskryptu -help
Przykład:
py pwb.py redirect double -always
Naprawia wszystkie podwójne przekierowania bez potwierdzania zmian.
Lista wszystkich skryptów znajduje się w folderze scripts.
Pywikibot na wielu wiki
Podczas konfiguracji ustawiłeś domyślną wiki i język. Aby pracować na innych:
- utwórz kolejny plik rodziny,
- upewnij się, że
user-config.pyma odpowiednie wpisy, - dodaj dane logowania w
user-password.py.
Podczas uruchamiania skryptów:
py pwb.py redirect double -family:astroneer -lang:es -user:SenorBot5
Jeśli używasz domyślnych wartości, wystarczy:
py pwb.py redirect double -family:astroneer
FAQ
- Bot zatrzymuje się na 10 sekund między edycjami
- Użyj parametru
-pt:0.
- Nie mogę usuwać stron
- Musisz mieć skonfigurowane
sysopnamesoraz konto z uprawnieniami admina.
- Podczas przenoszenia stron pojawia się masa błędów
- Przekroczyłeś limit szybkości.
- Konto admina (sysop) ma wyższe limity — ustaw je w sysopnames i używaj do przenoszenia stron.
Zobacz też
Dalsze wsparcie
Szukasz dalszego wsparcia lub masz pytanie? Sprawdź poniższe linki, aby dowiedzieć się więcej.
- Dowiedz się więcej, sprawdzając inne strony pomocy.
- Uzyskaj pomoc od innych użytkowników Fandomu w Dyskusjach na Centrum Społeczności.
- Skontaktuj się ze wsparciem Fandomu poprzez formularz kontaktowy.