Использование Selenium с PhantomJS (python 2.7) Я нахожу текстовое поле на странице (Cisco Unity 7 FYI) и пытаюсь отправить ключи.Selenium Python - send_keys funky behavior
driver.find_element_by_id("pwdPwdPassword").send_keys("12345678")
driver.save_screenshot('screen.png')
Глядя на снимок экрана, на самом деле отправляются только 2 клавиши. Не уверены, какие из них Unity маскирует пароль. Я заметил, что если я иду через мой сценарий в IDLE и медленно введите
driver.find_element_by_id("pwdPwdPassword").send_keys("1")
driver.find_element_by_id("pwdPwdPassword").send_keys("2")
driver.find_element_by_id("pwdPwdPassword").send_keys("3")
driver.find_element_by_id("pwdPwdPassword").send_keys("4")
....
Нажатие клавиши на самом деле сделать это в текстовом поле. Я попытался поместить time.sleep (2) между каждыми send_keys в моем скрипте, но результаты одинаковы. Я надеюсь, что есть трюк, поэтому мне не нужно добавлять 30 секунд к моему сценарию, чтобы ввести этот пароль!
Спасибо !!!
Какую версию WebDriver вы используете? Какой браузер вы используете? Существует ли такое же поведение для разных страниц или браузеров? Если этот случай зависит только от приложения, мое единственное предложение - сделать свой собственный «сложный» метод отправки ключей. Например, 'def send_keys (element, keys_to_send): для ключа в keys_to_send: element.send_keys (key)' (Конечно, элемент должен быть определен первым) –
Извините! WebDriver 2.37.2, PhantomJS 1.9.2. Я проверил это с Chrome, и он работает, поэтому я думаю, что это проблема PhantomJS. Мне нужен безголовый браузер, знаете ли вы, возможно ли это с Chrome? Спасибо –
На Ubuntu я использую pyvirtualdisplay lib. На самом деле это Chromedriver на виртуальном дисплее в моем случае –