Manuál:Pywikibot/login.py

This page is a translated version of the page Manual:Pywikibot/login.py and the translation is 16% complete.

login.py is the python program that logs the user running the pywikibot on to the system using the data that can be found in user-config.py .

Přihlášení se za robota

Bots provide specified result and as a consequence, they should not need the attention that other changes require. By having a specific user to run the bot software, the changes created in this way will be hidden on a typical recent changes screen. Bot status is given when a community is in favour with someone running a bot.


Jak ví, kam se přihlásit?

In the user-config.py file there are three components:

  1. the language: mylang
  1. the family: family - this indicates wiki name, including wikipedia or wiktionary
  1. the username: username - this can be any user but it should be a user who is registered to run as a bot.

In order to login to all the projects/languages mentioned in user-config.py, the option -all can be used, and if the same password is used throughout all these projects, it can be combined with -pass so that the program doesn't ask for a password for each site.

$ python pwb.py login -all -pass

will login on all projects in user-config.py, using the same password for all. For now, using -pass option is not supported. (T102477) You should use password file instead. Create file with text like '("en", "wikipedia", "User", "password")' (you can use more than one line). Then, insert in your user-config.py file 'password_file = "path_to_password_file"' line. After this Pywikibot should use data from this file when he need to login. You should make user-config.py and password file unreadable for others (chmod 600 user-config.py) before adding secrets to it.

Odhlášení se

$ python pwb.py login -logout

Přihlášení se pomocí OAuth

Pywikibot supports login using OAuth authentication instead of password. The OAuth feature needs the site with Rozšíření:OAuth installed and configured properly. OAuth is more secure (passwords are not sent over the internet, can be invalidated at any time, and the permissions of the bot user can be restricted) and should generally be preferred over normal login. See Manual:Pywikibot/OAuth on how to use it (it does not involve login.py).

If for some reason you want to log your bot in as a multi-user OAuth app (not recommended, but e.g. older MediaWiki might not support owner-only apps), you can use login.py for that, with the option -oauth. The process contains the following steps:

  1. Log into meta as your bot account. Create an OAuth app at Special:OAuthConsumerRegistration/propose if it does not exist yet, and record the consumer key and secret. Until T323849 is resolved, only version 1.0a is supported
  1. Run python pwb.py login -oauth
  1. Input OAuth consumer key
  1. Input OAuth consumer secret
  1. Authenticate user via web browser. You may need to manually copy the url from the terminal if the web browser doesn't open up automatically.
  1. Input response query string to terminal when authentication succeeds.

E.g.: oauth_verifier=xxx&oauth_token=yyy

  1. Copy and paste authentication entry generated into user-config.py .
-logout, -pass, -force, -pass:XXXX and -sysop are not compatible with -oauth.


Dostupné globální parametry

Tyto možnosti přepíší konfiguraci v nastavení user-config.py .

Globální parametry
Parametr Popis Proměnná konfigurace
-dir:PATH Čtěte konfigurační data robota z adresáře daného PATH namísto z výchozího adresáře.  
-config:file Název souboru konfigurace uživatele. Default is user-config.py. user-config.py
-lang:xx Nastavte jazyk wiki, na kterém chcete pracovat, a přepište konfiguraci v user-config.py. xx by měl být kód jazyka. mylang
-family:xyz Nastavte rodinu wiki, na které chcete pracovat, např. wikipedie, wikislovník, wikitravel, ... Tím přepíšete konfiguraci v user-config.py. family
-user:xyz Přihlaste se jako uživatel 'xyz' namísto výchozího uživatelského jména. usernames
-daemonize:xyz Okamžitě vraťte řízení do terminálu a přesměrujte stdout a stderr do souboru xyz. (použijte pouze pro roboty, které nevyžadují žádný vstup z stdin).  
-help Zobrazí text nápovědy.  
-log Povolte soubor protokolu pomocí výchozího názvu souboru 'script_name-bot.log' Protokoly budou uloženy v podadresáři logs. log
-log:xyz Povolte soubor protokolu pomocí 'xyz' jako názvu souboru. logfilename
-nolog Zakázat soubor protokolu (pokud je ve výchozím nastavení povolen).  
-maxlag Nastaví nový parametr maxlag na počet sekund. Odložte úpravy bota během období zpoždění databázového serveru. Výchozí hodnota je nastavena na config.py maxlag
-putthrottle:n
-pt:n
-put_throttle:n
Nastavte minimální dobu (v sekundách), po kterou bude robot čekat mezi ukládáním stránek. put_throttle
-debug:item
-debug
Povolte soubor protokolu a zahrňte rozsáhlá ladicí data pro komponentu "item" (pro všechny komponenty, pokud je použit druhý formulář). debug_log
-verbose
-v
Nechte robota poskytnout další výstup konzoly, který může být užitečný při ladění. verbose_output
-cosmeticchanges
-cc
Přepne nastavení cosmetic_changes provedené v config.py nebo user-config.py na jeho inverzní hodnotu a potlačí jej. Všechna ostatní nastavení a omezení zůstávají nedotčené. cosmetic_changes
-simulate Zakáže zápis na server. Užitečné pro testování a ladění nového kódu (pokud je zadán, neprovádí žádné skutečné změny, ale ukazuje pouze to, co by se změnilo). simulate
-<proměnná nastavení>:n Všechny dané číselné konfigurační proměnné můžete použít jako volbu a upravit je pomocí příkazového řádku.