zoukankan      html  css  js  c++  java
  • 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、iechromeopera driver

      移动端驱动: Windows PhoneSelendroidios-driverAppium  支持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。

  • 相关阅读:
    HSF的原理分析
    python--cryptography加密
    PyQt5--QTDesigner--UI资源
    PyQt5--QTDesigner--UI样式表
    python--struct
    python--ffmpy3与ffmpeg
    python--you-get:视频下载
    python--base64--简单的加密和解密
    python--StringIO-在内存中读写str
    电脑技巧
  • 原文地址:https://www.cnblogs.com/wsy0202/p/12877010.html
Copyright © 2011-2022 走看看