巴黎的灯光下 发表于 2017-6-23 16:18:02

python+selenium 在 chrome 上操作键盘按钮无效

我想要利用chrome 的developer tools 工具获取H5页面的响应时间,我的思路是首先打开浏览器,然后按F12按钮,然后打开一个页面,然后截图。但是在实施的时候用selenium模拟按F12这动作的时候chrome 没有响应,代码执行也没有报错,后来换了火狐浏览器执行代码是可以模拟F12的操作的。折腾了好久不知道是什么原因,哪位大神帮忙解答一下,谢谢!
chrome版本:58.0.3029.110
webdriver是最新的
模拟按F12操作的Python代码如下:
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')
sleep(3)
builder = ActionChains(driver)
builder.key_down(Keys.F12).perform()
sleep(5)
driver.quit()

八戒你干嘛 发表于 2017-6-23 16:24:16

如果我没记错的话,chromedriver是不支持使用dev tool的。因为使用dev tool可能干扰driver执行时序。可能你要试试其他方法,比如用按键精灵等操作了。

悠悠小仙仙 发表于 2017-6-23 16:25:06

我试了下,使用元素的send_keys(Keys.F12)可以弄出来,你那边试试

草帽路飞UU 发表于 2017-6-23 16:25:52

chromium的实现,developer tool和chromedriver应该是使用相同的远程调试操作协议的。如果真是这样,则chromium内核一次只能接收一个client(比如f12,比如webdriver client session)来交互。所以,只要能确认这点,基本上,用python代码开f12就不可能了。

乐哈哈yoyo 发表于 2017-6-23 16:26:30

chrome版本太高了,换到低版本的就可以了
页: [1]
查看完整版本: python+selenium 在 chrome 上操作键盘按钮无效