selenium如何操作浏览器本身(如点击浏览器工具栏的内容)?

Viewed 7044

各位好,本人在使用selenium操作chromedriver的时候遇到了一个问题,在此提出希望能得到帮助。
描述:本人希望利用selenium自动化测试一个网页,采用的浏览器是chromedriver,在测试的过程中,需要去点击浏览器工具栏的一个插件socksshadow(如图,因为我要点击插件更换模式)图片描述

我进行了两个尝试:
(1)第一个尝试是操作鼠标去点击这个按钮,ActionChains(self.driver).move_by_offset(950, 50).click(),但好像selenium的鼠标范围只能在页面内而不包括工具栏,所以不成功
(2)第二个尝试是发送组合键来调出这个工具,这个工具的组合键是“ALT+SHIFT+O”,但调用之后浏览器无反应,ActionChains(self.driver).send_keys(Keys.ALT + Keys.SHIFT + 'o').perform()
(组合键的代码是可以正常工作的因为我发送组合键“CTRL+A”是可以看到全选效果的)

我的问题是:根据前面两种操作都无法操作浏览器的工具栏,是否selenium本身不具备操作浏览器工具栏的功能?如果不是,请问应该如何实现我的这一需求?

十分感谢!

4 Answers

你若使用的是python的编程语言,你可以用jPype和Sikuli

你说得对,不支持

是的,谢谢回复

看样子你要切换代理模式,,
但调用浏览器操作栏还没有尝试过,你可以查阅一下文档,或者直接写个脚本调用。

是的,我想切换代理,网上给出的建议是使用sikuli来操作浏览器工具栏,selenium不能操作