且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

在Android使用Jsoup爬取网上数据

更新时间:2022-06-23 07:34:33

1.在lib中倒入jsoup-1.10.2.jar,在Android Studio中切换到Project目录下,将jsoup-1.10.2.jar放入lib,然后右键点击Add As Library。
2.通过线程启动jsoup联网服务,以下是jsoup获取网上数据的一个方法代码


    public static List<News> getNews() {
        final List<News> newses=new ArrayList<News>();

        //创建线程,启动联网
        new Thread(new Runnable() {
            public void run() {
                try {
                    //连接网址
                    Document doc = Jsoup.connect("http://news.zhku.edu.cn/xxyw.htm").get();

                    //通过选择器里选择ul.indexnewsul4
                    Elements newsUl = doc.select("ul.indexnewsul4");
                    //再ul.indexnewsul4下的所有li
                    Elements lis = newsUl.select("li");


                    for (int i=0;i<lis.size();i++) {
                        Log.i("size..",lis.size()+"");
                        Element li=lis.get(i);
                        //获取title
                        String title = li.getElementsByTag("a").text();
                        //获取URL
                        String url=li.getElementsByTag("a").attr("href");
                        Log.i("url",url);
                        //获取日期
                        String date = li.getElementsByTag("span").text();
                        News news = new News(url, title, date);
                        newses.add(news);
                    }
                } catch (IOException e) {
//                    Toast.makeText(Context.Ma,"无法连接网络",Toast.LENGTH_SHORT).show();

                    e.printStackTrace();
                }
            }
        }).start();

        return newses;

3.在清单文件的<application>外部加入联网权限。

   <!-- 必须添加以下权限,才能联网 -->
    <uses-permission android:name="android.permission.INTERNET" />

4.没有4了,大功告成。。。。

具体代码,下载连接:http://download.csdn.net/download/qi_ming88/10133185