Shizhao created this task.
Shizhao added a project: Pywikibot.
Restricted Application added subscribers: pywikibot-bugs-list, Aklapper.
TASK DESCRIPTION
I use `pywikibot.data.api.Request` to import pages through import API, the
code is:
params = {
"action": "import",
"format": "json",
"token": csrf,
"interwikiprefix": "w",
"namespace":'0',
'xml':file_content
}
response = pywikibot.data.api.Request(site=site, mime={"file":
(file_content, ('text','xml'), {"filename": FILE_PATH})}, throttle=True,
max_retries=None, retry_wait=None, use_get=False, parameters=params).submit()
return error:
> response = pywikibot.data.api.Request(site=site, mime={"file":
(file_content, ('text','xml'), {"filename": FILE_PATH,'charset':'utf-8'})},
throttle=True, max_retries=None, retry_wait=None, use_get=False,
parameters=params).submit()
> File
"/mnt/nfs/labstore-secondary-tools-project/zhdeletionpedia/pywikibot/pywikibot/data/api/_requests.py",
line 975, in submit
> paramstring)
> File
"/mnt/nfs/labstore-secondary-tools-project/zhdeletionpedia/pywikibot/pywikibot/data/api/_requests.py",
line 658, in _get_request_params
> self._encoded_items(), self.mime)
> File
"/mnt/nfs/labstore-secondary-tools-project/zhdeletionpedia/pywikibot/pywikibot/data/api/_requests.py",
line 645, in _build_mime_request
> body = container.as_bytes()
> File
"/mnt/nfs/labstore-secondary-tools-project/zhdeletionpedia/pywikibot/pywikibot/data/api/__init__.py",
line 93, in as_bytes
> g.flatten(self, unixfrom=unixfrom)
> File "/usr/lib/python3.7/email/generator.py", line 116, in flatten
> self._write(msg)
> File "/usr/lib/python3.7/email/generator.py", line 181, in _write
> self._dispatch(msg)
> File "/usr/lib/python3.7/email/generator.py", line 214, in _dispatch
> meth(msg)
> File "/usr/lib/python3.7/email/generator.py", line 272, in
_handle_multipart
> g.flatten(part, unixfrom=False, linesep=self._NL)
> File "/usr/lib/python3.7/email/generator.py", line 116, in flatten
> self._write(msg)
> File "/usr/lib/python3.7/email/generator.py", line 181, in _write
> self._dispatch(msg)
> File "/usr/lib/python3.7/email/generator.py", line 214, in _dispatch
> meth(msg)
> File "/usr/lib/python3.7/email/generator.py", line 432, in _handle_text
> super(BytesGenerator,self)._handle_text(msg)
> File "/usr/lib/python3.7/email/generator.py", line 249, in _handle_text
> self._write_lines(payload)
> File "/usr/lib/python3.7/email/generator.py", line 155, in _write_lines
> self.write(line)
> File "/usr/lib/python3.7/email/generator.py", line 406, in write
> self._fp.write(s.encode('ascii', 'surrogateescape'))
>
> UnicodeEncodeError: 'ascii' codec can't encode characters in position 2-5:
ordinal not in range(128)
> CRITICAL: Exiting due to uncaught exception <class 'UnicodeEncodeError'>
TASK DETAIL
https://phabricator.wikimedia.org/T334747
EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: Shizhao
Cc: Aklapper, pywikibot-bugs-list, Shizhao, PotsdamLamb, Jyoo1011,
JohnsonLee01, SHEKH, Dijkstra, Khutuck, Zkhalido, Viztor, Wenyi, Tbscho, MayS,
Framawiki, Mdupont, JJMC89, Dvorapa, Altostratus, Avicennasis, mys_721tx, Xqt,
jayvdb, Masti, Alchimista
_______________________________________________
pywikibot-bugs mailing list -- [email protected]
To unsubscribe send an email to [email protected]