Доброго дня!
Просьба помочь разобраться с ошибкой кодировки русского текста в Selenium IDE.
Какая была цель:
Автоматизировать обновление проекта .side, загружая в него напрямую актуальные sendKeys из api через python.
Предусловия:
1. В python делается api-запрос, ответом на который служит некий список (несколько сотен разных значений) в формате json .
2. Этот список переделывается в словарь питона.
3. Питон открывает файл проекта .side. Проект представляет из себя множество одинаковых тестов.
4. В команды sendKeys этих тестов питон вставляет по одному значению из списка, полученного через api-запрос.
5. Питон обновляет файл .side.
6. Файл .side обновлен актуальными значениями sendKeys, успех. Тест становится актуальным/валидным
В чём ошибка:
Вместо русских символов в интерфейсе Selenium IDE стоят знаки вопроса (ошибка кодировки) (скрин 1):
1.png 95,67К 0 Количество загрузок:
Код python, отвечающий за изменение файла .side:
with open("C:\\test.side", "r") as file:
old_version = file.read()
with open("C:\\test.side", "r") as file:
result = json.loads(file.read())
counter = 0
tests = result.get("tests")
for test in tests:
commands = test.get("commands")
for command in commands:
if "sendKeys" in command.values():
if counter >= len(buildings):
break
test["name"] = buildings[counter]
command["value"] = buildings[counter]
counter += 1
resultJson = json.dumps(result, ensure_ascii=False)
new_data = old_version.replace(old_version, resultJson)
with open("C:\\test.side", "w") as file:
file.write(new_data)
Вопрос:
Что нужно добавить в код, чтобы IDE нормально воспринимала его кодировку?
Визуально, если открыть файл .side, весь русский текст отображается корректно (в блокноте).
Заранее большое спасибо за ответ.