首页 > 代码库 > HtmlUnitDriver 网页内容动态抓取
HtmlUnitDriver 网页内容动态抓取
#抓取内容 WebDriver driver = new HtmlUnitDriver(false); driver.get(url); String html = driver.getPageSource(); #如何想等待一会元素渲染完毕 driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);
#进行百度搜索 public static void doSearch(String keyword) { final String url = "http://www.baidu.com"; WebDriver driver = new HtmlUnitDriver(false); driver.get(url); driver.findElement(By.id("kw")).sendKeys(keyword); Actions action = new Actions(driver); action.sendKeys(Keys.ENTER).perform(); System.out.println(driver.getPageSource()); }
1 Selenium可支持的【真实】浏览器驱动:
PC端驱动:firefox、safari、ie、chrome、opera driver
移动端驱动: Windows Phone、Selendroid、ios-driver、Appium 支持iphone、ipad、android、FirefoxOS【第三方】
safari、ff都是以插件形式驱动浏览器本身的;ie、chrome都是通过二进制文件来驱动浏览器本身的;
这些driver都是直接启动并通过调用浏览器的底层接口来驱动浏览器的,因此具有最真实的用户场景模拟,主要用于进行web的兼容性测试使用。
2 selenium可支持的【伪浏览器】驱动:
HtmlUnit 、PhantomJS
它们都不是真正的在浏览器、都没有GUI,而是具有支持html、js等解析能力的类浏览器程序;这些程序不会渲染出网页的显示内容,但是支持页面元素的查找、JS的执行等;由于不进行css及GUI渲染,所以运行效率上会比真实浏览器要快很多,主要用在功能性测试上面。htmlunit是Java实现的类浏览器程序,包含在selenium server中,无需驱动,直接实例化即可;其js的解析引擎是Rhino。
HtmlUnitDriver 网页内容动态抓取
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。