android jsoup简书,Jsoup学习及使用
* Jsoup:jsoup 是一款Java 的HTML解析器,可直接解析某個URL地址、HTML文本內容。
它提供了一套非常省力的API,可通過DOM,CSS以及類似于jQuery的操作方法來取出和操作數(shù)據。
* 快速入門:
* 步驟:
1. 導入jar包
2. 獲取Document對象
3. 獲取對應的標簽Element對象
4. 獲取數(shù)據
* 代碼:
//2.1獲取student.xml的path
String path = JsoupDemo1.class.getClassLoader().getResource("student.xml").getPath();
//2.2解析xml文檔,加載文檔進內存,獲取dom樹--->Document
Document document = Jsoup.parse(new File(path), "utf-8");
//3.獲取元素對象 Element
Elements elements = document.getElementsByTag("name");
System.out.println(elements.size());
//3.1獲取第一個name的Element對象
Element element = elements.get(0);
//3.2獲取數(shù)據
String name = element.text();
System.out.println(name);
* 對象的使用:
1. Jsoup:工具類,可以解析html或xml文檔,返回Document
* parse:解析html或xml文檔,返回Document
* parse?(File in, String charsetName):解析xml或html文件的。
* parse?(String html):解析xml或html字符串
* parse?(URL url, int timeoutMillis):通過網絡路徑獲
取指定的html或xml的文檔對象
2. Document:文檔對象。代表內存中的dom樹
* 獲取Element對象
* getElementById?(String id):根據id屬性值獲取唯一的element對象
* getElementsByTag?(String tagName):根據標簽名稱獲取元素對象集合
* getElementsByAttribute?(String key):根據屬性名稱獲取元素對象集合
* getElementsByAttributeValue?(String key, String value):根據對應的屬
性名和屬性值獲取元素對象集合
3. Elements:元素Element對象的集合??梢援斪?ArrayList來使用
4. Element:元素對象
1. 獲取子元素對象
* getElementById?(String id):根據id屬性值獲取唯一的element對象
* getElementsByTag?(String tagName):根據標簽名稱獲取元素對象集合
* getElementsByAttribute?(String key):根據屬性名稱獲取元素對象集合
* getElementsByAttributeValue?(String key, String value):根據對應的屬
性名和屬性值獲取元素對象集合
2. 獲取屬性值
* String attr(String key):根據屬性名稱獲取屬性值
3. 獲取文本內容
* String text():獲取文本內容
* String html():獲取標簽體的所有內容(包括字標簽的字符串內容)
5. Node:節(jié)點對象
* 是Document和Element的父類
?
* 快捷查詢方式:
1. selector:選擇器
* 使用的方法:Elements select?(String cssQuery)
* 語法:參考Selector類中定義的語法
2. XPath:XPath即為XML路徑語言,它是一種用來確定XML(
標準通用標記語言的子集)文檔中某部分位置的語言
* 使用Jsoup的Xpath需要額外導入jar包。
* 查詢w3cshool參考手冊,使用xpath的語法完成查詢
* 代碼:
//1.獲取student.xml的path
String path = JsoupDemo6.class.getClassLoader().getResource("student.xml").getPath();
//2.獲取Document對象
Document document = Jsoup.parse(new File(path), "utf-8");
//3.根據document對象,創(chuàng)建JXDocument對象
JXDocument jxDocument = new JXDocument(document);
//4.結合xpath語法查詢
//4.1查詢所有student標簽
List jxNodes = jxDocument.selN("//student");
for (JXNode jxNode : jxNodes) {
System.out.println(jxNode);
}
System.out.println("--------------------");
//4.2查詢所有student標簽下的name標簽
List jxNodes2 = jxDocument.selN("//student/name");
for (JXNode jxNode : jxNodes2) {
System.out.println(jxNode);
}
System.out.println("--------------------");
//4.3查詢student標簽下帶有id屬性的name標簽
List jxNodes3 = jxDocument.selN("//student/name[@id]");
for (JXNode jxNode : jxNodes3) {
System.out.println(jxNode);
}
System.out.println("--------------------");
//4.4查詢student標簽下帶有id屬性的name標簽 并且id屬性值為itcast
List jxNodes4 = jxDocument.selN("//student/name[@id='itcast']");
for (JXNode jxNode : jxNodes4) {
System.out.println(jxNode);
}
總結
以上是生活随笔為你收集整理的android jsoup简书,Jsoup学习及使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PD3.0详解 第十二章总结
- 下一篇: 免费PPT模板下载(毕业设计答辩,毕业设