Просьба помочь разобраться с ошибкой кодировки русского текста в Selenium IDE.
Какая была цель:
Автоматизировать обновление проекта .side, загружая в него напрямую актуальные sendKeys из api через python.
Предусловия:
1. В python делается api-запрос, ответом на который служит некий список (несколько сотен разных значений) в формате json .
2. Этот список переделывается в словарь питона.
3. Питон открывает файл проекта .side. Проект представляет из себя множество одинаковых тестов.
4. В команды sendKeys этих тестов питон вставляет по одному значению из списка, полученного через api-запрос.
5. Питон обновляет файл .side.
6. Файл .side обновлен актуальными значениями sendKeys, успех. Тест становится актуальным/валидным
В чём ошибка:
Вместо русских символов в интерфейсе Selenium IDE стоят знаки вопроса (ошибка кодировки) (скрин 1):
Код 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
В общем хотелось бы что бы следующий код работал (python):
WebDriver
часть выполняется скрыто.
открывается окно браузера
вторая часть выполняется уже визуально.
В общем хотелось бы что бы этот код работал, но он не работает:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
# создаем опции для безголового режима
chrome_options = Options()
chrome_options.add_argument('--headless')
# создаем драйвер с заданными опциями
driver = webdriver.Chrome(options=chrome_options)
# выполняем действия без отображения окна браузера
driver.get('https://www.google.com')
# здесь можно выполнить другие действия
# открываем окно браузера и продолжаем выполнение скрипта
chrome_options = driver.options
chrome_options.remove_argument('--headless')
driver.set_window_size(1920, 1080) # задаем размер окна браузера
driver.maximize_window() # максимизируем окно браузера
# здесь можно продолжить выполнение скрипта, отображая окно браузера