Edgars2007 created this task.
Edgars2007 added projects: Toolforge, Pywikibot.
Restricted Application added subscribers: pywikibot-bugs-list, Aklapper.
TASK DESCRIPTION
For about two months my bot fails to login as sysop with pywikibot, when run
on Toolforge ('edgars' tool, if somebody wants to look around), both with
running with jsub and running in cron (so... i guess -grid engine); didn't test
the k8s. As i can successfully login on my Windows machine on all recent
pywikibot versions, i guess it has something to do with Toolforge?
The issue started in the week between October 19 and October 26. I vaguely
remember, that there was similar issue few months ago (September?), but can't
find anything in Phab.
Yes, I have botpasswords and no, i don't remember changing it. Running the
script as my bot account works fine.
pywikibot version: '5.3.0'
script to reproduce:
import pywikibot
print(pywikibot.__version__)
lvsite = pywikibot.Site("lv", "wikipedia", user='Edgars2007')
pagetosave = pywikibot.Page(lvsite,'Dalībnieks:Edgars2007/Smilšu kaste')
pagetosave.text = 'test'
pagetosave.save(summary='test', botflag=True)
the log:
Logging in to wikipedia:lv as Edgars2007@EdgarsBot
ERROR: Login failed (Aborted).
Password for user Edgars2007@EdgarsBot on wikipedia:lv (no characters will
be shown): WARNING: /usr/lib/python3.5/getpass.py:92: GetPassWarning: Can not
control echo on the terminal.
passwd = fallback_getpass(prompt, stream)
Warning: Password input may be echoed.
Traceback (most recent call last):
File "/data/project/shared/pywikibot/stable/pywikibot/login.py", line
326, in login
cookiedata = self.getCookie()
File "/data/project/shared/pywikibot/stable/pywikibot/tools/__init__.py",
line 1564, in wrapper
return obj(*new_args, **new_kwargs)
File "/data/project/shared/pywikibot/stable/pywikibot/data/api.py", line
3071, in getCookie
raise APIError(code=status, info=info)
pywikibot.data.api.APIError: Aborted: Cannot log in when using
MediaWiki\Session\BotPasswordSessionProvider sessions.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/getpass.py", line 70, in unix_getpass
old = termios.tcgetattr(fd) # a copy to save
termios.error: (25, 'Inappropriate ioctl for device')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "pwb/check.py", line 9, in
pagetosave.save(summary='test', botflag=True)
File "/data/project/shared/pywikibot/stable/pywikibot/tools/__init__.py",
line 1481, in wrapper
return obj(*__args, **__kw)
File "/data/project/shared/pywikibot/stable/pywikibot/tools/__init__.py",
line 1481, in wrapper
return obj(*__args, **__kw)
File "/data/project/shared/pywikibot/stable/pywikibot/page/__init__.py",
line 1272, in save
cc=apply_cosmetic_changes, quiet=quiet, **kwargs)
File "/data/project/shared/pywikibot/stable/pywikibot/page/__init__.py",
line 138, in wrapper
handle(func, self, *args, **kwargs)
File "/data/project/shared/pywikibot/stable/pywikibot/page/__init__.py",
line 117, in handle
func(self, *args, **kwargs)
File "/data/project/shared/pywikibot/stable/pywikibot/page/__init__.py",
line 1283, in _save
watch=watch, bot=botflag, **kwargs)
File
"/data/project/shared/pywikibot/stable/pywikibot/site/_decorators.py", line 94,
in callee
return fn(self, *args, **kwargs)
File "/data/project/shared/pywikibot/stable/pywikibot/site/__init__.py",
line 3402, in editpage
token = self.tokens['edit']
File
"/data/project/shared/pywikibot/stable/pywikibot/site/_tokenwallet.py", line
52, in __getitem__
self.site.login()
File "/data/project/shared/pywikibot/stable/pywikibot/tools/__init__.py",
line 1481, in wrapper
return obj(*__args, **__kw)
File "/data/project/shared/pywikibot/stable/pywikibot/site/__init__.py",
line 334, in login
if login_manager.login(retry=True, autocreate=autocreate):
File "/data/project/shared/pywikibot/stable/pywikibot/login.py", line
340, in login
return self.login(retry=True)
File "/data/project/shared/pywikibot/stable/pywikibot/login.py", line
321, in login
password=True)
File "/data/project/shared/pywikibot/stable/pywikibot/bot.py", line 454,
in input
data = ui.input(question, password=password, default=default,
force=force)
File
"/data/project/shared/pywikibot/stable/pywikibot/userinterfaces/