Я пытаюсь открыть локальный файл в селене, используя
driver.get( ('file://' + file ))
где file
- имя файла.
Кажется, имя файла содержит символы латинского алфавита:
.. \\ ИМЯ ПРОДУКТА - Something Something.html
когда я использую file.decode('latin-1')
, я получаю:
.. \\ ИМЯ ПРОДУКТА \ x96 Something Something.html
Если я просто использую driver.get( ('file://' + file ))
, я получу:
UnicodeDecodeError: 'utf8' codec can't decode byte 0x96 in position 81: invalid start byte
Если я использую driver.get( ('file://' + file.decode('latin_1') ))
, я получаю сообщение о том, что файл не найден:
...fileNotFound&u=file%3A///C%3A/PRODUCT%20NAME%20%C2%96%20Something%20Something.html.
Я не уверен на 100%, какую кодировку он ожидает, но я попытался перекодировать имя файла в Unicode и UTF-8 без удачи (та же ошибка - говорит, что файл не найден).
Есть идеи, как мне решить эту проблему? Переименование самого файла, к сожалению, не подойдет. Я хочу правильно его декодировать, а затем перекодировать (сэндвич кодирования рекомендовали другие).