admin管理员组文章数量:1026989
前言
通过控制已经打开的浏览器这种方式可以省去在开发调试过程中需要重新执行流程的麻烦,也可以达到反反爬的效果。
- Chrome.exe 右击属性 在目标栏中加入下面参数,配置完成之后打开这个Chrome再配合我们的代码就能成功接管这个浏览器了。
--remote-debugging-port=9222 --user-data-dir="D:\logs"
ps: --user-data-dir="D:\logs" 存放新的Chrome数据,相当于新的Chrome
2. 简单Demo
private final static String CHROME_DRIVER_NAME = "webdriver.chrome.driver";
private final static String CHROME_DRIVER_87_PATH = "C:\\drive\\chromedriver-87.exe";
public static void main(String[] args) {
System.setProperty(CHROME_DRIVER_NAME, CHROME_DRIVER_87_PATH);
ChromeOptions option = new ChromeOptions();
option.setExperimentalOption("debuggerAddress", "127.0.0.1:9222");
ChromeDriver driver = new ChromeDriver(option);
System.out.println(driver.getTitle());
driver.findElementByXPath("//*[@id=\"sb_form_q\"]").sendKeys("Java");
driver.findElementByXPath("//*[@id=\"sb_form_q\"]").sendKeys(Keys.ENTER);
System.out.println(driver.getTitle());
}
前言
通过控制已经打开的浏览器这种方式可以省去在开发调试过程中需要重新执行流程的麻烦,也可以达到反反爬的效果。
- Chrome.exe 右击属性 在目标栏中加入下面参数,配置完成之后打开这个Chrome再配合我们的代码就能成功接管这个浏览器了。
--remote-debugging-port=9222 --user-data-dir="D:\logs"
ps: --user-data-dir="D:\logs" 存放新的Chrome数据,相当于新的Chrome
2. 简单Demo
private final static String CHROME_DRIVER_NAME = "webdriver.chrome.driver";
private final static String CHROME_DRIVER_87_PATH = "C:\\drive\\chromedriver-87.exe";
public static void main(String[] args) {
System.setProperty(CHROME_DRIVER_NAME, CHROME_DRIVER_87_PATH);
ChromeOptions option = new ChromeOptions();
option.setExperimentalOption("debuggerAddress", "127.0.0.1:9222");
ChromeDriver driver = new ChromeDriver(option);
System.out.println(driver.getTitle());
driver.findElementByXPath("//*[@id=\"sb_form_q\"]").sendKeys("Java");
driver.findElementByXPath("//*[@id=\"sb_form_q\"]").sendKeys(Keys.ENTER);
System.out.println(driver.getTitle());
}
版权声明:本文标题:Java+Selenium 控制已经打开的浏览器 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1727322188a730392.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论