java从网页抓取数据( 有没有们有没有想过如何爬取js生成的网络页面吗?)

优采云 发布时间: 2022-02-24 11:15

  java从网页抓取数据(

有没有们有没有想过如何爬取js生成的网络页面吗?)

  

  当我们使用浏览器处理网页时,有时我们不需要浏览。例如,使用 PhantomJS 适用于无头浏览器抓取网页数据。有没有想过如何爬取js生成的网页?别着急,本文将为您一一介绍。

  1、PhantomJS 的功能

  提供浏览器环境的命令行界面,除了不能浏览,其余与普通浏览器相同。它的核心是WebKit引擎,不提供图形界面,只能在命令行下使用。

  2、PhantomJS 使用

  适用范围是无头浏览器的适用范围。通常无头浏览器可用于页面自动化和网络爬虫等。

  页面自动化测试:希望能自动登录网站做一些操作,然后检查结果是否正常。

  网络爬虫:获取js下载并渲染页面中的信息,或者使用js跳转后获取链接的真实地址。

  3、 对于用PhantomJS编写的parser.js文件,调用java爬虫爬取网页数据

  Runtime rt = Runtime.getRuntime();

        Process process = null;

        try {

            process = rt.exec("C:/phantomjs.exe C:/parser.js " +url);

            InputStream in = process.getInputStream();

            InputStreamReader reader = new InputStreamReader(in, "UTF-8");

            BufferedReader br = new BufferedReader(reader);

            StringBuffer sbf = new StringBuffer();

            String tmp = "";

            while ((tmp = br.readLine()) != null) {

                sbf.append(tmp);

            }

            return sbf.toString();

        } catch (IOException e) {

            e.printStackTrace();

        }

        return null;

  以上是对PhantomJS的简单介绍,以及使用java爬虫爬取PhantomJS为爬取数据编写的网页的代码实现。我希望它可以帮助你。更多java推荐:java教程。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线