日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 使用Jsoup解析Html

發布時間:2025/7/14 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 使用Jsoup解析Html 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

想要做一個看新聞的應用,類似Cnbeta客戶端的東西。大致思路如下:根據鏈接獲取新聞列表頁的html代碼,然后解析,找到所有的新聞標題和新聞鏈接用listView顯示,當點擊ListView的Item再加載相應的新聞內容。

其中獲取html代碼,可以使用如下代碼實現:

public String getHtmlString(String urlString) { try { URL url = new URL(urlString); URLConnection ucon = url.openConnection(); InputStream instr = ucon.getInputStream(); BufferedInputStream bis = new BufferedInputStream(instr); ByteArrayBuffer baf = new ByteArrayBuffer(500); int current = 0; while ((current = bis.read()) != -1) { baf.append((byte) current); } return EncodingUtils.getString(baf.toByteArray(), "gbk"); } catch (Exception e) { return ""; } }

傳入一個網頁鏈接,將返回此鏈接的html代碼(String)。

然后就是解析此html代碼了。經過google,發現了java的一個很好用的解析html的庫,Jsoup:http://jsoup.org/

很容易使用,方法類似javascript和JQuery。只需先構建一個Jsoup的Document對象,然后就可以像使用js一個解析html了

String htmlString = getHtmlString("http://www.cnbeta.com"); Document document = Jsoup.parse(htmlString);

比如要獲取cnbeta的html的title,只需:

String title = document.head().getElementsByTag("title").text();

另外構建Document的時候也可以直接使用URL,像這樣:

Document doc = Jsoup.parse(new URL("http://www.cnbeta.com"), 5000);

其中5000是連接網絡的超時時間。

?

?

有關Jsoup的下載和更多介紹,見其官網:http://jsoup.org/

我寫的一個demo,點擊按鈕后會加載然后顯示cnbeta首頁的所有新聞標題和鏈接地址,下載:http://download.csdn.net/detail/barryhappy/4151450?,zip包里有jsoup的jar包,導入項目后可能需要手動導入此jar包。

運行效果圖——

?

轉載于:https://www.cnblogs.com/zhujiabin/p/5310050.html

總結

以上是生活随笔為你收集整理的Android 使用Jsoup解析Html的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。