(一)XPath基础知识
XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。
W3School官方文档:http://www.w3school.com.cn/xpath/index.asp
1.XPath如何解析HTML文本内容?
我们可以 将 HTML文件 转换成 XML文档,然后用 XPath 查找 HTML 节点或元素。
2.XPath 开发工具
- 开源的XPath表达式编辑工具:XMLQuire(XML格式文件可用)
- Chrome插件 XPath Helper
- Firefox插件 XPath Checker
3.XPath的基本语法
表达式 | 描述 | 实例 |
---|---|---|
//node_name | 匹配所有node_name节点 | //div(获取所有div元素) |
/node_name | 选择当前元素 | //div/ul(选择所有div内的ul对象) |
@attr | 选择一个元素的属性 | //div/ul/@class(选择ul元素class属性值) |
[@attr=“attr_value”] | 选择特定属性值的元素 | //div[@id=“hello”] (选择id为hello的div) |
text() | 从根节点或元素中选择文本 | //div[@id=“hello”]/ul/li/text()(选择id为“hello”的div中的列表中li的文本内容) |
contains(@attr,“value”) | 模糊匹配 | div[contains(@id,“he”)](选择id属性包含"he"的div) |
* | 通配符 | //div/ul/li |
[1,2…]或[first()]或[last()] | 根据节点出现的顺序选择元素 | //div/ul/li[3](选择所有div中ul中的第三个列表对象 ) |
4.实例演示
xml文本内容为:
<?xml version="1.0" encoding="utf-8"?>
<bookstore>
<book category="cooking">
&l