package com.example.jsoup;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
public class MainActivity extends Activity {
private String content;
private Handler mHandler = null;
public static final String URL_MAIN = "http://video.hao123.com/dianying/";
ListView ls;
SimpleAdapter adapter;
private List<Map<String,Object>> list = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ls = (ListView) findViewById(R.id.ls);
list = new ArrayList<Map<String,Object>>();
mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
adapter=new SimpleAdapter(MainActivity.this, list, R.layout.activity_main, new String[]{"tvShow","tvShow1"},new int[]{R.id.tvShow,R.id.tvShow1});
ls.setAdapter(adapter);
}
};
new Thread() {
public void run() {
try {
/**
* 使用Jsoup解析html
*/
//连接主页,获取html,开始进行解析
Document doc = Jsoup.connect(URL_MAIN).get();
//获得一个以movie_show_shot(热播电影)为id节点
Element nodes = doc.getElementById("movie_show_hot");
//获得一个以<class="video"节点集合
Elements links = nodes.getElementsByClass("video");
int i = 0;
for (i = 0; i < links.size(); i++) {
//遍历集合获得第一个节点元素
String et = links.get(i).select("a[href]").first().attr("href");
String et1= links.get(i).select("p").text();
HashMap<String,Object> hashmap = new HashMap<String,Object>();
hashmap.put("tvShow",et);
hashmap.put("tvShow1",et1);
list.add(hashmap);
//获取元素的href属性
}
mHandler.sendEmptyMessage(0);
} catch (IOException e) {
e.printStackTrace();
}
};
}.start();
}
}
JSOUP解析网页信息并将其数据显示在listview上
最新推荐文章于 2022-03-01 19:43:53 发布