Fruit-HTMLHTML 解析框架
Fruit
簡(jiǎn)單的說(shuō)Fruit之于html正如Gson之于Json,它能讓你以一種注解的方式來(lái)描述解析的邏輯。下面是一個(gè)例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
public class FruitInfo {
@Pick("div#only")
private String favorite;
@Pick(value = "div#only", attr = Attrs.OWN_TEXT)
private String favoriteOne;
@Pick(value = "div#only", attr = Attrs.HTML)
private String favoriteHtml;
@Pick(value = "img.apple", attr = Attrs.SRC)
private String img;
@Pick(value = "a.author", attr = Attrs.HREF)
private String blog;
@Pick("div.fruit")
private List<Item> items;
public static class Item {
@Pick("strong.name")
private String name;
@Pick(".color")
private String color;
@Pick(attr = "id")
private int id;
}
} |
這里就不做更多的說(shuō)明了,GitHub項(xiàng)目主頁(yè)有更豐富的使用說(shuō)明,歡迎訪問(wèn)查看。
V2er
V2er就是開始時(shí)說(shuō)的那個(gè)要開發(fā)的V2EX客戶端。
這個(gè)APP的開發(fā)是從去年底開始一直到今年9月中旬基本開發(fā)完成,到現(xiàn)在也迭代了幾個(gè)版本,在市場(chǎng)上也獲得了很多用戶的好評(píng)與鼓勵(lì)平均評(píng)分在4.8,
歡迎各位朋友去下載使用,在Google Play及酷安市場(chǎng)已上架。
前幾天也寫了個(gè)基本版 - V2er-Core把V2er的核心代碼開源了。這個(gè)小項(xiàng)目完整的展示了如何利用 “Fruit/Retrofit2/OKHttp3/RxJava” 來(lái)開發(fā)這種APP(數(shù)據(jù)大部分來(lái)源于html及少量json接口)
下面一段代碼是最終實(shí)現(xiàn)后的Retrofit API Service代碼樣例(是不是看上去和使用真的Json接口一樣)
1 2 3 4 5 6 7 |
public interface APIs {
@GET("/api/topics/hot.json") @Json
Observable<DailyHotInfo> dailyHot();
@GET("/") @Html
Observable<NewsInfo> homeNews(@Query("tab") String tab);
} |
最后再貼一張V2er-Core實(shí)現(xiàn)的效果圖:

大家可以去這里找到它的源碼。
評(píng)論
圖片
表情
