NIUBI
开发教程

Android 利用 Jsoup 爬虫框架解析网页 html

3天前/ 2/ / WP爱好者/ 已收录/
导语: Jsoup 是不是叫爬虫框架我不清楚,只是比较应景,别深究。Jsoup 功能非常强大,它可以使用 DOM 或 CSS 选择器来查找、取出数据。有人会说,我使用字符串操作函数构造取文本中间函数也是可以从网页 HTML 中取得需要的内容,那是你没遇到经常改版的网页,并且使用字符串操作来解析网页是非常麻烦的,因为不同的网页字符串标识不一样,而 Jsoup 不仅使用方便,而且可以像 jQuery 的选择器那样取数据,非常好用,不吹了,看下面介绍。

Jsoup 是不是叫爬虫框架我不清楚,只是比较应景,别深究。Jsoup 功能非常强大,它可以使用 DOM 或 CSS 选择器来查找、取出数据。有人会说,我使用字符串操作函数构造取文本中间函数也是可以从网页 HTML 中取得需要的内容,那是你没遇到经常改版的网页,并且使用字符串操作来解析网页是非常麻烦的,因为不同的网页字符串标识不一样,而 Jsoup 不仅使用方便,而且可以像 jQuery 的选择器那样取数据,非常好用,不吹了,看下面介绍。

Jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

Jsoup 的主要功能:
1. 从一个 URL,文件或字符串中解析 HTML;
2. 使用 DOM 或 CSS 选择器来查找、取出数据;
3. 可操作 HTML 元素、属性、文本;

Jsoup 官方地址:https://jsoup.org/download

使用案例

private void getDataByJsoup(){  final NewsInfo newsInfo = new NewsInfo(); final Message message = new Message(); newsList.add(newsInfo);  // 开启一个新线程 new Thread(new Runnable() { @Override public void run() { try { // 网络加载 HTML 文档 Document doc = Jsoup.connect("https://voice.hupu.com/nba") .timeout(5000) // 设置超时时间 .get(); // 使用 GET 方法访问 URL Elements elements = doc.select("div.list-hd"); for (Element element:elements){  String title = element.select("a").text(); // 新闻标题 String url = element.select("a").attr("href"); // 新闻内容链接 newsInfo.setTitle(title); newsInfo.setNewsUrl(url); Log.e("TAG","Jsoup ======>>" + title + url); } Elements elements1 = doc.select("div.otherInfo"); for (Element element: elements1){  String time = element.select("a").text(); // 时间 newsInfo.setNewsTime(time); Log.e("TAG","Jsoup ======>>" + time );  }  message.what = 1;  } catch (IOException e) { message.what = 2; e.printStackTrace(); } handler.sendMessage(message); } }).start(); }

结果如下图所示:

Android 利用 Jsoup 爬虫框架解析网页 html

Android 利用 Jsoup 爬虫框架解析网页 html

点点赞赏,手留余香

还没有人赞赏,快来当第一个赞赏的人吧!
admin给Admin打赏
×
予人玫瑰,手有余香
  • 2
  • 5
  • 10
  • 20
  • 50
2
支付
收藏 0 海报

版权归属:本文为原创文章,版权归 所有

本文链接:( 欢迎分享本文,转载请保留出处 )

免责声明:如发现本站有涉嫌抄袭侵权/违法违规的内容,请邮件/留言反馈,一经查实本站将立刻删除!

<< 上一篇

2021-02-07

下一篇 >>

2021-03-06

全部评论( 0 条 )
扫一扫二维码分享