Я запускаю некоторые вещи, которые требуют автоматизации браузера на экземпляре AWS. Я пытаюсь запустить Selenium с виртуальным дисплеем, но мой код вылетает всякий раз, когда я пытаюсь использовать Selenium для отправки ввода с клавиатуры на страницу. Я могу загружать исходный код и находить элементы на страницах, но не могу использовать метод send_keys. Ниже представлен MWE, воспроизводящий сбой:
from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(1920, 1080))
display.start()
driver = webdriver.Chrome()
driver.get("http://google.com")
search_field = driver.find_element_by_id("lst-ib")
search_field.send_keys("foo")
А вот трассировка стека:
Traceback (most recent call last):
File "mwe.py", line 12, in <module>
search_field.send_keys(u"foo")
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webelement.py", line 479, in send_keys
'value': keys_to_typing(value)})
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webelement.py", line 628, in _execute
return self._parent.execute(command, params)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 314, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: call function result missing 'value'
(Session info: chrome=67.0.3396.62)
(Driver info: chromedriver=2.27.440175 (9bc1d90b8bfa4dd181fbbf769a5eb5e575574320),platform=Linux 4.4.0-116-generic x86_64)
Мой Google Fu до сих пор меня подводил, поэтому мы очень ценим любой вклад.






Обновите драйвер Chrome до версии 2.39. Ваша версия 2.27 очень старая и несовместима с версией Chrome.