Java Selenium防止被网站检测(谷歌浏览器)
通过命令打开一个浏览器窗口
进入谷歌浏览器安装目录执行命令 chrome.exe --remote-debugging-port=9222
注意:执行此命令前关闭浏览器所有窗口!!否则将不会生效
编码实现
System.setProperty("webdriver.chrome.driver", "your chrome driver path");
ChromeOptions option = new ChromeOptions();
option.setExperimentalOption("debuggerAddress", "127.0.0.1:9222");//此为固定代码(如果您的端口号不变的情况下)
webDriver = new ChromeDriver(option);
//隐式等待时间
webDriver.manage().timeouts().implicitlyWait(20,TimeUnit.MILLISECONDS);
webDriver.get("web page url");
优劣说明
优势 | 劣势 |
---|---|
基本可以躲开绝大多数网站的检测 | 不能使用无头模式(因为必须存在那个已经打开的窗口) |
http代理将不会生效 |