首页 > 解决方案 > AttributeError:“WebElement”对象没有属性“sendKeys”

问题描述

我正在尝试选择网络表单上的所有文本字段并将其删除。该网站是:https ://onlinehtmleditor.dev/

附图: 在此处输入图像描述 这是我的代码:

w = webdriver.Chrome(executable_path='chromedriver.exe', chrome_options=options)
w.get("https://onlinehtmleditor.dev/")
time.sleep(4)
switch_to_html ='//*[@id="ckeditor-4-output-button"]'
paste_code = '//*[@id="ckeditor-4-output"]/div/div[6]/div[1]/div/div'
element = w.find_element_by_xpath(switch_to_html).click()
time.sleep(2)
# element = w.find_element_by_xpath(paste_code).send_keys("Hi")
clickElement = w.find_element_by_css_selector(".CodeMirror-lines")
time.sleep(1)
clickElement.click()
clickElement.sendKeys(Keys.CONTROL + "a")
clickElement.sendKeys(Keys.DELETE)

在此行中遇到问题:

clickElement.sendKeys(Keys.CONTROL + "a")
AttributeError: 'WebElement' object has no attribute 'sendKeys'

如何解决这个问题,请指导我

标签: pythonselenium

解决方案


在 Python Selenium 中,将文本发送到 Web 元素的方法是send_keys.
sendKeys是一种 Java Selenium 方法。
所以而不是

clickElement.sendKeys(Keys.CONTROL + "a")
clickElement.sendKeys(Keys.DELETE)

采用

clickElement.send_keys(Keys.CONTROL + "a")
clickElement.send_keys(Keys.DELETE)

推荐阅读