Selenium:Python ActionChains无效
我正在尝试在Chromedriver中实现简单的控制 + S操作。
我试过用 webdriver.send_keys(Keys.CONTROL, "s")
,但没有成功。
然后我又试了
ActionChains(driver).key_down(Keys.LEFT_CONTROL).key_down('s').perform()
但还是不行。
我还有什么其他的选择呢?当我在Chromedriver浏览器中手动按控制 + S时,它是有效的。为什么Selenium做不到这一点呢?
我正在使用Selenium的Python版本。
2 个回答
-4
from selenium.webdriver.common.keys import Keys
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("Https://www.google.com")
body = driver.find_element_by_tag_name('body')
body.send_keys(Keys.CONTROL, "s")
上面的代码在我使用Windows和Firefox的时候是可以正常工作的。请确保你使用的是最新版本的Selenium,版本2.45.0。
3
将按键发送到 Body
元素:
from selenium.webdriver.common.keys import Keys
body = driver.find_element_by_tag_name('body')
body.send_keys(Keys.CONTROL, "s") # on Mac: body.send_keys(Keys.COMMAND, "s")
或者,可以通过这种方式获取实际的 HTML 源代码:
html = driver.find_element_by_xpath("//*").get_attribute("outerHTML")
print html