在尝试使用send_keys()
方法登录时输入用户名。我猜它能够找到输入元素,就像我运行直到send_keys
起作用之前一样。通过在send_keys
中发送字符串值,将引发错误。
selenium.common.exceptions.WebDriverException: Message: Expected [object Undefined] undefined to be a string
我想念什么?
的Python:3.5
Selenium 3.3.1
Firefox开发人员版或Nightly(当前版本> 52)
我的代码段:
login_url = "https://korunet.co.nz/"
driver = webdriver.Firefox()
driver.get(login_url)
WebDriverWait(driver, 30).until(ec.visibility_of_element_located((By.CSS_SELECTOR, '#IDToken1')))
elem = driver.find_element_by_css_selector('#IDToken1')
elem.click()
elem.clear()
elem.send_keys("10101")
追溯(最近一次通话):
File "D:/PycharmProjects/JCBbidEntry/tests/loop2.py", line 29, in elem.send_keys("10101")
File "C:\Users\BaruaR\AppData\Roaming\Python\Python35\site-packages\selenium\webdriver\remote\webelement.py", line 347, in send_keys self._execute(Command.SEND_KEYS_TO_ELEMENT, {'value': keys_to_typing(value)})
File "C:\Users\BaruaR\AppData\Roaming\Python\Python35\site-packages\selenium\webdriver\remote\webelement.py", line 491, in _execute return self._parent.execute(command, params)
File "C:\Users\BaruaR\AppData\Roaming\Python\Python35\site-packages\selenium\webdriver\remote\webdriver.py", line 238, in execute self.error_handler.check_response(response)
File "C:\Users\BaruaR\AppData\Roaming\Python\Python35\site-packages\selenium\webdriver\remote\errorhandler.py", line 193, in check_response
raise exception_class(message, screen, stacktrace)
最佳答案
似乎已解决,至少对于我而言,最新版本的geckodriver 0.16:https://github.com/mozilla/geckodriver/releases/tag/v0.16.0
请注意,版本0.16需要 Selenium 3.4。
-爱琳
关于python-3.x - Selenium + Firefox开发版: send_keys throwing [object Undefined] exception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43175013/