发送密钥而不在 python selenium webdriver 中指定元素
Posted
技术标签:
【中文标题】发送密钥而不在 python selenium webdriver 中指定元素【英文标题】:Send keys without specifying element in python selenium webdriver 【发布时间】:2015-12-29 11:15:36 【问题描述】:我有一个页面的源代码不可用,但是有一个输入框光标在闪烁。
我可以在没有找到元素的情况下在文本框中写一些东西吗?我的意思是,发送键可以通过某种方式自动查找焦点输入框并输入输入。
我的代码显然不起作用
driver.send_keys("testdata")
【问题讨论】:
如果元素处于活动状态,您可以发送单独的 keytorkes:***.com/a/11507909/2374517 【参考方案1】:解决了
from selenium.webdriver.common.action_chains import ActionChains
actions = ActionChains(self.driver)
actions.send_keys('dummydata')
actions.perform()
【讨论】:
如果您在上述答案的第 2 行遇到问题,请使用actions = ActionChains(driver)
。作者可能在类对象中生成了驱动程序,因此需要 self.driver 来访问它。【参考方案2】:
如果您在此代码中收到有关“自我”的错误:
from selenium.webdriver.common.action_chains import ActionChains
actions = ActionChains(self.driver)
actions.send_keys('dummydata')
actions.perform()
只需使用:
actions = ActionChains(driver)
我没有评论权,所以我把这个作为答案
编辑:将此增强功能添加为对原始答案的评论。
【讨论】:
【参考方案3】:这对我有用:
driver.find_element_by_tag_name('body').send_keys(' ')
(我曾经使用空格字符来滚动页面)
【讨论】:
以上是关于发送密钥而不在 python selenium webdriver 中指定元素的主要内容,如果未能解决你的问题,请参考以下文章
Selenium:如何使用Javascript将密钥发送到JQuery输入
在发送密钥和控制台之后获取输入值,记录值Selenium Webdriver