在python selenium webdriver中发送密钥而不指定元素

Sau*_*ava 15 python selenium python-2.7 python-3.x selenium-webdriver

我有一个源代码不可用的页面,但有一个输入框,光标闪烁.

我可以在没有找到元素的情况下在文本框中写入内容.我的意思是,发送密钥可以自动查找聚焦输入框并输入输入的某种方式.

我的代码不明显

driver.send_keys("testdata")
Run Code Online (Sandbox Code Playgroud)

Sau*_*ava 15

解决了它

from selenium.webdriver.common.action_chains import ActionChains
actions = ActionChains(self.driver)
actions.send_keys('dummydata')
actions.perform()
Run Code Online (Sandbox Code Playgroud)

  • 如果您遇到上述答案第 2 行的问题,请使用“actions = ActionChains(driver)”。作者可能在类对象中生成了驱动程序,因此需要 self.driver 来访问它。 (5认同)

Ayu*_*ara 13

如果您在此代码中收到有关“self”的错误:

from selenium.webdriver.common.action_chains import ActionChains
actions = ActionChains(self.driver)
actions.send_keys('dummydata')
actions.perform()
Run Code Online (Sandbox Code Playgroud)

只需使用:

actions = ActionChains(driver)
Run Code Online (Sandbox Code Playgroud)

我没有评论权,这就是为什么我把它作为答案

编辑:添加此增强功能作为对原始答案的评论。


Eri*_*ulz 5

这对我有用:

driver.find_element_by_tag_name('body').send_keys(' ')
Run Code Online (Sandbox Code Playgroud)

(我曾经使用空格字符滚动页面)