Page MenuHomePhabricator

commands with colon fails
Closed, ResolvedPublic

Description

When running script with pagegenerators containing character ":", bot fails:

I:\py\rewrite>pwb.py newitem -catr:údržba_Wikipedie
Retrieving 50 pages from wikipedia:cs.

Wikipedie:Požadované články <<<

[[cs:Wikipedie:Požadované články]] already has an item: [[wikidata:Q4664111]].
...

I:\py\rewrite>pwb.py newitem -catr:údržba:Wikidata
Traceback (most recent call last):

File "I:\py\rewrite\pwb.py", line 164, in <module>
  run_python_file(fn, argv, argvu)
File "I:\py\rewrite\pwb.py", line 69, in run_python_file
  exec(compile(source, filename, "exec"), main_mod.__dict__)
File "I:\py\rewrite\scripts\newitem.py", line 149, in <module>
  main()
File "I:\py\rewrite\scripts\newitem.py", line 135, in main
  elif gen.handleArg(arg):
File "I:\py\rewrite\pywikibot\pagegenerators.py", line 415, in handleArg
  gen = self.getCategoryGen(arg, len('-catr'), recurse=True)
File "I:\py\rewrite\pywikibot\pagegenerators.py", line 283, in getCategoryGen
  defaultNamespace=14))
File "I:\py\rewrite\pywikibot\tools.py", line 529, in wrapper
  return obj(*__args, **__kw)
File "I:\py\rewrite\pywikibot\page.py", line 1951, in __init__
  if self.namespace() != 14:
File "I:\py\rewrite\pywikibot\page.py", line 158, in namespace
  return self._link.namespace
File "I:\py\rewrite\pywikibot\page.py", line 4141, in namespace
  self.parse()
File "I:\py\rewrite\pywikibot\page.py", line 4050, in parse
  newsite = self._site.interwiki(prefix)
File "I:\py\rewrite\pywikibot\site.py", line 600, in interwiki
  "'{0}' is not an interwiki prefix.".format(prefix))

UnicodeEncodeError: 'ascii' codec can't encode character u'\xfa' in position 0:
ordinal not in range(128)
<type 'exceptions.UnicodeEncodeError'>
CRITICAL: Waiting for 1 network thread(s) to finish. Press ctrl-c to abort

I:\py\rewrite>


Version: core-(2.0)
Severity: critical

Details

Reference
bz72093

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 3:56 AM
bzimport set Reference to bz72093.
bzimport added a subscriber: Unknown Object (????).

The workaround is to use Kategorie.

python pwb.py newitem -catr:Kategorie:údržba:Wikidata -lang:cs -simulate

gerritadmin wrote:

Change 166897 had a related patch set uploaded by XZise:
[FIX] Site: Use unicode for errors with iw prefix

https://gerrit.wikimedia.org/r/166897

gerritadmin wrote:

Change 166903 had a related patch set uploaded by Mpaa:
Bug 72093 - commands with colon fails

https://gerrit.wikimedia.org/r/166903

gerritadmin wrote:

Change 166897 merged by jenkins-bot:
[FIX] Site: Use unicode for errors with iw prefix

https://gerrit.wikimedia.org/r/166897

This appears to be solved (the command in comment 0 generates pages).