Android天鷹樂閱 網(wǎng)絡(luò)閱讀器源碼下載
作者:佚名
這是一款通過jsoup解析Html獲取內(nèi)容的網(wǎng)絡(luò)閱讀器,大學(xué)時(shí)期閑暇完成,對照CSDN的Web頁面元素設(shè)計(jì)進(jìn)行解析提取內(nèi)容,核心功能就是使用jsoup解析。
功能分類:娛樂
支持平臺:Android
運(yùn)行環(huán)境:Android
開發(fā)語言:Java
開發(fā)工具:Eclipse
源碼大?。?5.49MB
源碼簡介
這是一款通過jsoup解析Html獲取內(nèi)容的網(wǎng)絡(luò)閱讀器,大學(xué)時(shí)期閑暇完成,對照CSDN的Web頁面元素設(shè)計(jì)進(jìn)行解析提取內(nèi)容,核心功能就是使用jsoup解析。以下是相關(guān)截圖。
[注:程序中有少許bug]
源碼運(yùn)行截圖
源碼片段
- package com.weiyi.itreader.util;
- import java.util.ArrayList; import java.util.List;
- import org.jsoup.Jsoup;
- import org.jsoup.nodes.Document; import org.jsoup.nodes.Element;
- import org.jsoup.select.Elements;
- import android.util.Log;
- import com.weiyi.itreader.common.Constant; import com.weiyi.itreader.entity.ITBlog;
- /**
- * 功能:ITBlog獲取工具,通過URL解析html獲取網(wǎng)絡(luò)文章各項(xiàng)信息,主要用到html解析工具Jsoup *
- * @author moho * */
- public class ITBlogUtil { /**
- * 獲取文章列表 *
- * @param url * 請求的URL
- * @return List<itblog> IT閱讀文章列表 * */
- public static List<itblog> getITBlogList(String url) { List<itblog> itBlogs = new ArrayList<itblog>();
- try { Document doc = Jsoup.connect(url).get();
- Elements titles = doc.getElementsByClass( Constant.ITBLOG_TITLE_CLASS).tagName("a");// 獲取所有class=link_title的標(biāo)簽元素
- Elements dates = doc.getElementsByClass(Constant.ITBlOG_DATE_CLASS); Elements urls = titles.select(Constant.HREF_SELECT);
- for (int i = 0; i < titles.size(); ++i) { String blogUrl = Constant.ITBLOG_URL
- + urls.get(i).attributes().get("href");// 每篇文章的URL String iconUrl = getIconUrlByBlogUrl(blogUrl);
- ITBlog itBlog = new ITBlog(); if (iconUrl != null)
- itBlog.setIconUrl(iconUrl);// 設(shè)置每篇文章的頭圖標(biāo)URL itBlog.setTilte(titles.get(i).text());// 獲取a標(biāo)簽內(nèi)的文本,即文章標(biāo)題
- itBlog.setDate(dates.get(i).text());// 獲取文章發(fā)表日期 itBlog.setUrl(blogUrl);// 獲取超鏈接屬性href的值
- itBlogs.add(itBlog); }
- } catch (Exception e) { e.printStackTrace();
- } return itBlogs;
- }
- /** * 獲取文章內(nèi)容
- * * @param url
- * 請求的URL * @return String IT閱讀文章內(nèi)容
- * */ public static String getContentByURL(String url) {
- String content = ""; try {
- Document doc = Jsoup.connect(url).get(); Element contentElement = doc
- .getElementById(Constant.ITBlOG_CONTENT_ID); content = contentElement.html();
- } catch (Exception e) { e.printStackTrace();
- return content; }
- return content; }
- /**
- * 獲取文章圖標(biāo),根據(jù)文章的URL地址解析img標(biāo)簽獲取src屬性值 *
- * @param blogUrl * 請求的文章URL
- * @return String IT閱讀文章圖標(biāo)URL * */
- public static String getIconUrlByBlogUrl(String blogUrl) { String iconUrl = null;
- try { Document doc = Jsoup.connect(blogUrl).get();
- Element contentElement = doc .getElementById(Constant.ITBlOG_CONTENT_ID);// 獲取內(nèi)容區(qū)
- Elements imgElements = contentElement.getElementsByTag("img"); if(imgElements.size()>0)
- iconUrl = imgElements.get(0).attributes().get("src");// 獲取UIRL,默認(rèn)取第一個(gè)遇到的img的URL } catch (Exception e) {
- e.printStackTrace(); }
- return iconUrl; }
- } </itblog></itblog></itblog></itblog>
責(zé)任編輯:閆佳明
來源:
devstore