xml解析Jsoup快速入门以及Jsoup对象()-js
xml解析Jsoup快速入门以及Jsoup对象()
xml解析Jsoup快速入门
快速入门: 步骤:
1、导入jar包
2、获取Document对象
3、获取对应的标签Element对象
4、获取数据
/**
* Jsoup快速入门
*/
public class JsoupDemo01 {
public static void main(String[] args) throws IOException {
//获取Document对象,根据xml文档获取
//获取student.xml的path
String path = JsoupDemo01.class.getClassLoader().getResource("student1.xml").getPath();
//解析xml文档,加载文档进内存,获取dom树—Document
Document document = Jsoup.parse(new File(path), "utf-8");
//获取元素对象
Elements elements = document.getElementsByTag("name");
System.out.println(elements.size());
//获取第一个name的Element对象
Element element = elements.get(0);
//获取数据
String name = element.text();
System.out.println(name);
}
}
Jsoup对象
对象的使用:
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的文档对象
public class JsoupDemo02 {
public static void main(String[] args) throws IOException {
//获取Document对象,根据xml文档获取
//获取student.xml的path
String path = JsoupDemo02.class.getClassLoader().getResource("student1.xml").getPath();
//解析xml文档,加载文档进内存,获取dom树—Document
Document document = Jsoup.parse(new File(path), "utf-8");
//2、parse(String html):解析xml或html字符串
String str = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" +
"\n" +
"<students>\n" +
"\t<student number=\"aaa_0001\">\n" +
"\t\t<name>张三</name>\n" +
"\t\t<age>23</age>\n" +
"\t\t<sex>male</sex>\n" +
"\t</student>\n" +
"\t<student number=\"aaa_0002\">\n" +
"\t\t<name>李四</name>\n" +
"\t\t<age>31</age>\n" +
"\t\t<sex>female</sex>\n" +
"\t</student>\n" +
"</students>";
Document parse = Jsoup.parse(str);
System.out.println(parse);
//parse(URL url,int timeoutMillis):通过网络路径获取指定的html或xml的文档对象
URL url = new URL("https://baike.baidu.com/item/jsoup/9012509?fr=aladdin");
Document parse1 = Jsoup.parse(url, 10000);
System.out.println(parse1);
}
}
2、Document:文档对象。代表内存中的dom树
3、Elements:元素Element对象的集合。可以当做Arraylist<Element>来使用
4、Element:元素对象
5、Node:节点对象
xml解析Jsoup快速入门
快速入门: 步骤:
1、导入jar包
2、获取Document对象
3、获取对应的标签Element对象
4、获取数据
/**
* Jsoup快速入门
*/
public class JsoupDemo01 {
public static void main(String[] args) throws IOException {
//获取Document对象,根据xml文档获取
//获取student.xml的path
String path = JsoupDemo01.class.getClassLoader().getResource("student1.xml").getPath();
//解析xml文档,加载文档进内存,获取dom树—Document
Document document = Jsoup.parse(new File(path), "utf-8");
//获取元素对象
Elements elements = document.getElementsByTag("name");
System.out.println(elements.size());
//获取第一个name的Element对象
Element element = elements.get(0);
//获取数据
String name = element.text();
System.out.println(name);
}
}
Jsoup对象
对象的使用:
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的文档对象
public class JsoupDemo02 {
public static void main(String[] args) throws IOException {
//获取Document对象,根据xml文档获取
//获取student.xml的path
String path = JsoupDemo02.class.getClassLoader().getResource("student1.xml").getPath();
//解析xml文档,加载文档进内存,获取dom树—Document
Document document = Jsoup.parse(new File(path), "utf-8");
//2、parse(String html):解析xml或html字符串
String str = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" +
"\n" +
"<students>\n" +
"\t<student number=\"aaa_0001\">\n" +
"\t\t<name>张三</name>\n" +
"\t\t<age>23</age>\n" +
"\t\t<sex>male</sex>\n" +
"\t</student>\n" +
"\t<student number=\"aaa_0002\">\n" +
"\t\t<name>李四</name>\n" +
"\t\t<age>31</age>\n" +
"\t\t<sex>female</sex>\n" +
"\t</student>\n" +
"</students>";
Document parse = Jsoup.parse(str);
System.out.println(parse);
//parse(URL url,int timeoutMillis):通过网络路径获取指定的html或xml的文档对象
URL url = new URL("https://baike.baidu.com/item/jsoup/9012509?fr=aladdin");
Document parse1 = Jsoup.parse(url, 10000);
System.out.println(parse1);
}
}
2、Document:文档对象。代表内存中的dom树
3、Elements:元素Element对象的集合。可以当做Arraylist<Element>来使用
4、Element:元素对象
5、Node:节点对象