java解析标记文档HTML或xml
@xml两种解析方式
1.DOM解析:一次性将文件读入内存,形成DOM树
2.sax解析:基于事件驱动逐行读取
@常见解析器:
1.Dom4j
2.Jsoup:Java的解析器(jse提供了相应接口)
@Jsoup介绍(第三方jar包)
Jsoup可解析html和xml,返回Document对象
Document,Element等对象在java.xml包下已经定义了接口
@Jsoup获取Document对象
&Jsoup提供了静态方法parse(),该重构方法常用三个:
- parse(File in, String charsetName):解析xml或html文件的。
- parse(String html):解析xml或html字符串
- parse(URL url, int timeoutMillis):通过网络路径获取指定的html或xml的文档对象
@Document中方法
1.getElementById()
2.getElementByTag()
3.getElementsByAttribute()
4.getElementByAttributeValue()
@Element对象中方法
1.attr():获取属性
2.html():获取标签所有内容
@Jsoup提供两种选择器
1.Selector基础选择器,JSE定义
2.Xpath选择器(需要导另一个JsoupXpath-0.3.2.jar包)
@使用方法
1.selector基础选择器:Document对象直接调用select(String CSSquery),基础选择器语法为CSS选择器语法
2.Xpath选择器:Xpath提供了JXDocument类,类中提供了selN()/selNone()等成员方法用于选择,JXDocument创建对象需要Document对象作为参数
例:
String path=JXDocumentDemo.class.getCalssLoader().getResource(“student.xml”).getPath;
Document doc=Jsoup.parse(new File(path),“utf-8”);
JXDocument jxd=new JXDocument(doc);
List list=jxd.selN(“语法”);
Xpth匹配语法:
select匹配语法