@Nemo111

Как стабильно вводить текст в поле браузера из кода с помощью Python?

Сейчас в моей программке для тестирования используется Selenium, но по минимуму т.е. только получаю элементы и их атрибуты. Не хочу вводит текст с помощью Селена так как страницы того, что надо тестировать - динамические, а перед вводом полученные элементы определенное время хранятся в программе или парсятся т.е. возникает, что элемент будет уже в браузере изменен и ввод текста не сработает.
Сейчас использую win32api для ввода текста из кода в буфер обмена затем с помощью эмуляции нажатия cntrl-v текст вставляется в нужный элемент(вида input) в браузер.
Вопрос: текст из буфера обмена вставляется не всегда а через раз. Причину отловить почему иногда не вставляется не смог. Пробовал готовые библиотечки работы с буфером обмена - результат тот же..
Решил добавить функциональность, что бы вводить в поле текст с помощью эмуляции нажатия клавиш, но для этого нужно получать язык раскладки и переключать его на нужный что тоже не получается.
Вопросы:
Какой вариант может работать стабильно с буфером обмена?
Как переключать язык с помощью win32api?
Примеры:
то, что работает сейчас win32api:
OpenClipboard()
EmptyClipboard()
SetClipboardText(text, CF_UNICODETEXT)
CloseClipboard()
то, что вызывал, что бы поменять язык и что не работает:
int_num = LoadKeyboardLayout('00000419', 1)
  • Вопрос задан
  • 756 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы