當前位置:編程學習大全網 - 編程語言 - android studio 怎麽抓去網頁媒體資源

android studio 怎麽抓去網頁媒體資源

首先,也是很重要的壹步,就是下載jar包,丟到libs裏面

Android studio玩家可以不下載jar包,在Gradle裏面加入

dependencies {undefined

compile 'org.jsoup:jsoup:1.9.2'

}復制代碼

然後,找到妳心儀的網頁去抓取數據

這裏我們我繼續使用美食的網頁,然後右鍵查看網頁源碼,或者按F12,接下來可以看到壹大堆標簽:

Paste_Image.png

找到需要的,例如上圖這個 “美食天下” ,可以看到 “美食天下” 是放在以

為節點的 中,要獲取這個“美食天下”,代碼可以這樣寫:

try {undefined

//從壹個URL加載壹個Document對象。

Document doc = Jsoup.connect("/show-top-type-recipe.html").get();

//選擇“美食天下”所在節點

Elements elements = doc.select("div.top-bar");

//打印 a標簽裏面的title

Log.i("mytag",elements.select("a").attr("title"));

}catch(Exception e) {undefined

Log.i("mytag", e.toString());

}復制代碼

接下來看壹下打印出來的結果:

Paste_Image.png

Jsoup.connect(String url)方法從壹個URL加載壹個Document對象。如果從該URL獲取HTML時發生錯誤,便會拋出 IOException,應適當處理。

壹旦擁有了壹個Document,妳就可以使用Document中適當的方法或它父類 Element和Node中的方法來取得相關數據。

public class Element extends Node

public class Document extends Element復制代碼

很多文章都是說壹大堆原理然後放出壹個簡單的例子,就跟我上面簡單的打了壹個log壹樣,然後發現用起來的時候是沒那麽簡單的。為了大家能不看文檔也可以直接使用(並且看不懂那壹大堆標簽也可以用),我決定再舉壹個例子(其實也就是比上面多打幾個log):

下圖紅色框框是我們要獲取的數據,可以看到他們對應的節點就是藍色圓圈裏面的

Paste_Image.png

廢話不多說上代碼

try {undefined

//還是壹樣先從壹個URL加載壹個Document對象。

Document doc = Jsoup.connect("/show-top-type-recipe.html").get();

//“椒麻雞”和它對應的圖片都在復制代碼

Elements titleAndPic = doc.select("div.pic");

//使用Element.select(String selector)查找元素,使用Node.attr(String key)方法取得壹個屬性的值

Log.i("mytag", "title:" + titleAndPic.get(1).select("a").attr("title") + "pic:" + titleAndPic.get(1).select("a").select("img").attr("data-src"));

//所需鏈接在

中的a標簽裏面

Elements url = doc.select("div.detail").select("a");

Log.i("mytag", "url:" + url.get(i).attr("href"));

//原料在

Elements burden = doc.select("p.subcontent");

//對於壹個元素中的文本,可以使用Element.text()方法

Log.i("mytag", "burden:" + burden.get(1).text());

}catch(Exception e) {undefined

Log.i("mytag", e.toString());

}

大功告成,接下來看看log

Paste_Image.png

沒有問題!那麽教學可以結束了!

註意:

Jsoup.connect(String url)方法不能運行在主線程,否則會報NetworkOnMainThreadException

  • 上一篇:新疆體育生術科要求
  • 下一篇:軟件開發過程有幾個階段。每個階段的作用是什麽?
  • copyright 2024編程學習大全網