package jianshu.io.app.model.datapool; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import jianshu.io.app.model.ArticleInfo; import jianshu.io.app.model.ArticleItem; /** * Created by Administrator on 2014/5/5. */ public class HotPageDataPool extends ArticleDataPool{ private int pageIndex = 1; public HotPageDataPool(String url) { super(url); } @Override protected void onRefresh() { pageIndex = 1; } @Override protected ArticleItem[] getArticleItems(Document doc) { pageIndex++; mLoadMoreUrl = mStartUrl + "?_=" + System.currentTimeMillis() +"&page=" + pageIndex; Elements articleElements = doc.select("ul.top-notes li"); if(articleElements != null) { int i = 0; ArticleItem[] result = new ArticleItem[articleElements.size()]; for(Element el : articleElements) { result[i++] = parseElement(el); } return result; } else { return null; } } private ArticleItem parseElement(Element el) { Element titleEl = el.select("h4 > a").get(0); String title = titleEl.text(); String url = "http://jianshu.io" + titleEl.attr("href"); Element avatarEl = el.select("a.avatar > img").get(0); String avatarUrl = avatarEl.attr("src"); Element articleInfoEl = el.select("div.article-info").get(0); ArticleInfo articleInfo = parseArticleInfo(articleInfoEl); return new ArticleItem(title, avatarUrl, "", url, "", articleInfo); } }