【发布时间】:2020-11-30 12:49:14
【问题描述】:
我正在尝试使用 selenium 和 python 填写网络表单。 我正在遍历所有输入字段并发送每个“测试”字符串。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome('C:/Users/kbu/chromedriver.exe')
driver.get('https://skovbakken.halbooking.dk/proc_error.asp')
all_inputs = driver.find_elements_by_xpath("//input[@class='textbox_login']")
for input in all_inputs:
input.send_keys("Test")
只填写第一个。这是为什么呢?
这是我得到的错误:
Traceback (most recent call last):
File "C:\Users\kbu\Dropbox\Python\squash.py", line 10, in <module>
input.send_keys("Test")
File "C:\Users\kbu\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\webelement.py", line 477, in send_keys
self._execute(Command.SEND_KEYS_TO_ELEMENT,
File "C:\Users\kbu\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\webelement.py", line 633, in _execute
return self._parent.execute(command, params)
File "C:\Users\kbu\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Users\kbu\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
(Session info: chrome=84.0.4147.125)
这是 HTML:
【问题讨论】:
-
嗨克雷斯滕!请检查我的答案,让我知道这是否对您有用。
-
完成,也可以直接使用
//input[@class='textbox_login'][@type='text']就完成了。
标签: python-3.x selenium selenium-webdriver xpath display