Service 如何通过chromedriver selenium禁用位置服务?

Service 如何通过chromedriver selenium禁用位置服务?,service,selenium,location,selenium-chromedriver,Service,Selenium,Location,Selenium Chromedriver,我正在使用Selenium2-Webdriver、Chromedriver和Java。我的一个测试需要关闭Chrome上的定位服务 我注意到,默认情况下,位置服务是打开Chromedriver的 我想知道是否有办法禁用chromedriver上的定位服务 非常感谢 是的,这是可能的。 按以下方式使用ChromeOptions类: ChromeOptions options = new ChromeOptions(); JSONObject jsonObject = new JSONObje

我正在使用Selenium2-Webdriver、Chromedriver和Java。我的一个测试需要关闭Chrome上的定位服务

我注意到,默认情况下,位置服务是打开Chromedriver的

我想知道是否有办法禁用chromedriver上的定位服务

非常感谢

是的,这是可能的。 按以下方式使用ChromeOptions类:

 ChromeOptions options = new ChromeOptions();

 JSONObject jsonObject = new JSONObject();
 jsonObject.put("profile.default_content_settings.geolocation", 2);

 options.setExperimentalOption("prefs", jsonObject);
 WebDriver driver = new ChromeDriver(options);

您可以将其视为一个问题的答案

有人知道chromedriver是否支持禁用位置服务吗?感谢您的回复。如果chrome选项为hashmap格式,您将如何操作?Map chromeOptions=new HashMap()@elrobe我会尝试将地图中的相关条目转换为ChromeOptions。请注意,ChromeOptions.setExperimentalOption接收字符串和对象参数,这正是您在地图中拥有的。只需将映射中的值作为setExperimentalOption参数复制到。仅供参考:JSONObject是由该库创建的。setExperimentalOption在chromeoptions中不再可用,我认为AddAdditionalCapability()可以工作