jBrowserDriver爬取网页加密数据_刘新博客文章专栏
网站首页 文章专栏 jBrowserDriver爬取网页加密数据
jBrowserDriver爬取网页加密数据
编辑时间:2019-11-18 20:29:20.0 作者:刘新 浏览量:113

最近在处理影院业务时需要从网上爬取一些影片的简介信息,国内影片信息首选豆瓣了,但是发现之前豆瓣开放的API已经禁用,而且页面请求返回的数据都是加密后的。普通流读取的方式已经无法使用,除非能够使用js解密服务端加密的数据。

所以就引入了服务器浏览器引擎技术。

jBrowserDriver是一款采用纯Java编写的无图形化浏览器,基于WebKit,和Selenium兼容。

 

<dependency>
  <groupId>com.machinepublishers</groupId>
  <artifactId>jbrowserdriver</artifactId>
  <version>0.16.1</version>
</dependency>

 

   JBrowserDriver driver = new JBrowserDriver(Settings.builder().timezone(Timezone.ASIA_SHANGHAI).build());

        // 打开页面
        driver.get("https://www.baidu.com/");
        // 找到输入框,并输入,findElement 是一系列方法,为了方便此处使用 Xpath
        driver.findElementByXPath("//*[@id=\"kw\"]").sendKeys("Google");
        // 找到“百度一下”按钮并点击
        driver.findElementByXPath("//*[@id=\"su\"]").click();
        // 因为此页面内容是 ajax 加载的,等 JS 执行完成
        driver.pageWait();

 

 

同样,可以结合ashot,实现服务端网页截屏功能。

来说两句吧
最新评论