Android解析HTML网页数据 第一个方法Jsoup(一)

最近发现一些无聊的东西,就是抓取网页上的数据,然后使用安卓原生代码显示出来,或者说借用网页数据,用自定义的View显示。

借助jsoup-1.10.2.jar库,获取并解析数据。(Jsoup百度云下载地址:http://pan.baidu.com/s/1nvSFKyl)

jsoup官方文档:
https://jsoup.org/cookbook/

中文文档:
http://www.open-open.com/jsoup/

应用场景:

我需要获取博客园网页上的数据,如图中标记的文字标题,链接,文本简介。

1、浏览器打开网页,然后右键查看网页源码,或者按F12审查元素。(区别:审查元素(或者用开发者工具,Firebug)看到的是现在实时性的内容(经过js的修改),而网页源代码看到的是就是最开始浏览器收到HTTP响应内容)

找到对应的Html代码。

2、找到对应的节点<div class="post_item_body"> <a class="titlelnk"> <p class="post_item_summary">,使用Jsoup解析。代码如下:

public void testJsoup(){
        new Thread(new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                try {
                    Document doc = Jsoup.connect("http://www.cnblogs.com/").get();

                    Elements elements = doc.select("div.post_item_body");

                    for(Element element : elements){
                        Elements title = element.select("a.titlelnk");
                        Log.e("title:", title.get(0).text());
                        Log.e("url", title.get(0).attr("href"));

                        Elements content = element.select("p.post_item_summary");
                        Log.e("content:", content.get(0).text());

                    }

                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (Exception e) {
                    // TODO: handle exception
                }

            }
        }).start();
    }

3、打印日志,如下:

到这里,网页数据基本可以解析出来。

时间: 2024-10-12 15:59:16

Android解析HTML网页数据 第一个方法Jsoup(一)的相关文章

Android解析HTML网页数据 第一个方法dom4j(二)

抓取网页上的数据,然后使用安卓原生代码显示出来,或者说借用网页数据,用自定义的View显示. 这一次使用dom4j-1.6.1.jar库,获取并解析数据.(dom4j百度云下载地址:http://pan.baidu.com/s/1jHHa6O2) 这里是使用dom4j解析字符串(html格式): try { Document doc = DocumentHelper.parseText(json); Log.e("jeter", doc.toString()); } catch (Do

Android学习笔记-保存数据的实现方法1

Android开发中,有时候我们需要对信息进行保存,那么今天就来介绍一下,保存文件到内存,以及SD卡的一些操作,及方法,供参考. 第一种,保存数据到内存中: //java开发中的保存数据的方式 public static boolean saveUserInfo(String username,String password){ File file = new File("/data/data/com.ftf.login/info.txt"); try { FileOutputStre

Android 解析JSON格式数据

比起XML,JSON主要优势在于它的体积更小,在网络上传输的时候可以更省流量.但缺点在于,它的语义性较差,显示不如XML直观. JSON格式 :  { "name_A" : "value_A","name_B" : "value_B" } 表示:name_A = value_A;  name_B = value_B; 我将对下面的JSON数据进行解析: [{"id":"5","

Android解析服务器Json数据实例

Json数据信息如下: { "movies": [ { "movie": "Avengers", "year": 2012, "rating": 7.8, "duration": "141 min", "director": "Joss Whedon", "tagline": "A new age

Android WebView 获取网页数据(html)

1. activity_main.layout <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"       xmlns:tools="http://schemas.android.com/tools"       android:layout_width="match_parent"       android:layout_height=

android中使用JSOUP如何解析网页数据详述

最近使用了Jsoup,感觉还是挺简单,挺方便的,轻而易举地抓取网页源码,分析获取各个标签所需的东西. 这几天在搞一个音乐播放器的小项目,其中使用到了就是使用JSOUP进行页面数据的获取,获取网页的歌曲列表,并对歌曲的链接进行加载,以便实现歌曲下载和歌词的下载.搞好之后,就会跟着写几篇博文,分享给大家.本博文主要说明android中使用jsoup如何进行网页数据的获取. 具体可看下面各个相关例子: Jsoup下载地址: http://jsoup.org/download jsoup开发指南,jso

Android中解析JSON格式数据常见方法合集

待解析的JSON格式的文件如下: [{"id":"5", "version":"1.0", "name":"xiaowang"}, {"id":"10", "version":"2.0", "name":"lisi"}] 一.使用JSONObject来解析JSON数据

【Android 多媒体开发】 MediaPlayer 状态机 接口 方法 解析

作者 : 韩曙亮 转载请著名出处 :  http://blog.csdn.net/shulianghan/article/details/38487967 一. MediaPlayer 状态机 介绍 Android MediaPlayer 状态即图例 : 1. Idle (闲置) 状态 和 End (结束) 状态 MediaPlayer 对象声明周期 : 从 Idle 到 End 状态就是 MediaPlayer 整个生命周期; -- 生命周期開始 : 进入 Idle (闲置) 状态; -- 生

Android学习之XML数据的三种解析方式以及生成XML文件

首先,我得声明,本博客的思想主要参考了此博客:http://blog.csdn.net/liuhe688/article/details/6415593 不过代码我自己一句句敲的 好了,首先讲一下解析XML的三种方式:(恕我粘贴一下哈) SAX解析器: SAX(Simple API for XML)解析器是一种基于事件的解析器,它的核心是事件处理模式,主要是围绕着事件源以及事件处理器来工作的.当事件源产生事件后,调用事件处理器相应的处理方法,一个事件就可以得到处理.在事件源调用事件处理器中特定方