我正在尝试在 here 的文本框中书写。它是右边的方框,上面写着"在这里粘贴你的文字"。
我想我的问题是如何找到项目,例如通过id,我应该在selenium驱动程序中发送文本的框?
我尝试过类似的事情:
item = driver.find_element_by_css_selector("form#text_processor input[name=process_this]")
item.send_key("Test!")
但是当我这样做时,我收到此错误消息:
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: {"method":"css selector","selector":"form#text_processor input[name=process_this]"}
我很感激你的帮助。
答案 0 :(得分:2)
文本区域在iframe
内 - 切换到它,找到元素并向其发送密钥:
driver.switch_to.frame("textarea_iframe")
driver.find_element_by_id("textarea_body").send_keys("test")
请注意,要删除文本区域中的现有文本,只需预先选择全部:
text_area = driver.find_element_by_id("textarea_body")
text_area.send_keys(Keys.CONTROL, "a") # or Keys.COMMAND on Mac
text_area.send_keys("test")
此外,如果您需要返回主要内容,请使用:
driver.switch_to.default_content()