Xpath
1.xpanth 使用路径表达式在xml 和 html 中进行导航
2.xpath包含标准函数库
3.xpath是一个w3c的标准
符号 | 意义 |
---|---|
article | 选取所有article元素的所有子节点 |
/article | 选取根元素article |
article/a | 选区所有属于article的子元素的a元素 |
//div | 选取所有div子元素(不论出现在文档任何地方) |
article//div | 选取所有属于article元素的后代的div元素,不管它出现在article之下的任何位置 |
//@class | 选取所有名为class的属性 |
/article/div[1] | 选取属于article子元素的第一个div元素 !!!这个地方下标是从1开始不是从0开始 |
/article/div[last()] | 选取属于article子元素的最后一个div元素 |
/article/div[last()-1] | 选取属于article子元素的倒数第二个div元素 |
//div[@lang] | 选取所有拥有lang属性元素的div元素 |
//div[@lang = ‘eng’] | 选取所有lang属性为eng的div元素 |
/div/* | 选取所有div元素的所有子节点 |
//* | 选取所有元素 |
//div[@*] | 选取所有带属性的title元素 |
/div/a | //div/p | 选取所有div元素的a和p元素 |
//span | //ul | 选取文档中的span和ul元素 |
article/div/p | //span | 选取所有属于article元素和div元素和p元素 以及文档中所有的span元素 |
以 http://syw.ctgu.edu.cn/info/1003/29224.htm 为例子
获取这文章的时间
/html/body/
html为根节点 所以一开始为html
/html/body/table[2]/tbody/tr/td[1]/table/tbody/tr[2]/td/table/tbody/tr[1]/td/form/table/tbody/tr[2]/td/span[1]
浏览器中F12 调试 点中之后 右键 复制 xpath 可直接查看xpath
当然xpath路径的写法并不唯一,从html源码上看,很容易发现时间是用span标签包着的并且class = “timestyle0010”,所以用//span[@class = “timestyle0010”][0]也可以找到