其实这个主要的要点是将本地谷歌浏览器作为一个远程客户端。代码其实没多少。
1、修改本地谷歌浏览器配置
方式有2种。
1、命令行修改。需要注意要在安装的目录运行 大致结构是chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenium\ChromeProfile"
2、直接属性修改。 打开属性,选择快捷方式,选择目标。 命令行里面添加--remote-debugging-port=9222 --user-data-dir="C:\selenium\ChromeProfile"
2、修改代码程序。
代码修改的不多。这个是之前的,我们只需在这个driver里面加属性option。
WebDriver driver = new ChromeDriver();
修改成下面的。
ChromeOptions options = new ChromeOptions();options.setExperimentalOption("debuggerAddress","127.0.0.1:9222");WebDriver driver = new ChromeDriver(options);
这样就可以直接调用了。
下面是一个以登录过的淘宝为例。可以直接跳转到购物车,直接结账。逻辑上不是很严谨,其中结账那些按钮的判断。代码仅供参考。
ChromeOptions options = new ChromeOptions();options.setExperimentalOption("debuggerAddress","127.0.0.1:9222");WebDriver driver = new ChromeDriver(options);System.out.println(driver.getTitle());driver.get("https://cart.taobao.com/cart.htm?from=mini&ad_id=&am_id=&cm_id=");List<WebElement> selectAll = driver.findElements(By.className("ant-checkbox-input"));selectAll.get(0).click();WebElement total = driver.findElement(By.className("btn--QDjHtErD"));System.out.println(total.getText());total.click();