Python 3: urllib возвращает символы when при попытке удалить строку из кавычек - PullRequest
0 голосов
/ 12 декабря 2018

Я пытаюсь удалить из строки строку, извлеченную из ссылки через Selenium:

DOC.01-PROCURA%C7%C3O.pdf

Когда я пытаюсь использовать urllib.parse.unquote или urllib.parse.unquote_plusв Python 3 они оба возвращают следующее:

'DOC.01-PROCURA��O.pdf'

Как мне получить эти ars-символы?Он должен был вернуть DOC.01-PROCURAÇÃO.pdf, потому что Selenium загружает pdf-файл с этим именем, который я найду позже через os.path.exists.

1 Ответ

0 голосов
/ 13 декабря 2018

urllib.parse.unquote по умолчанию декодируется как UTF-8.В этом случае Windows-1252 работает:

>>> s = 'DOC.01-PROCURA%C7%C3O.pdf'
>>> urllib.parse.unquote(s,'Windows-1252')
'DOC.01-PROCURAÇÃO.pdf'

Проверьте кодировку страницы, с которой пришли данные.

...