本次测试使用chrome浏览器,以抓取百度搜索页前5页数据为例,为了验证效果,每个搜索结果都要点进去.
原有设置为: 代码耗时360s
//设置chrome选项
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");//开启无头模式
options.addArguments("--disable-gpu");//禁止gpu渲染
options.addArguments("–-no-sandbox");//关闭沙盒模式
options.addArguments("--disable-dev-shm-usage");
WebDriver driver = new ChromeDriver(options);
//设置5秒,全局寻找元素的等待时间
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
增加禁止加载图片的设置:代码耗时179s
HashMap<String, Object> prefs = new HashMap<>();
prefs.put("profile.default_content_settings", 2);
options.setExperimentalOption("prefs", prefs);
options.addArguments("blink-settings=imagesEnabled=false");//禁用图片
配置后,将近优化一半时间