Python:xpath备忘

来源:互联网 发布:聚合数据api 编辑:程序博客网 时间:2024/06/05 23:06

选取,注意节点
//
/根结点
//@href @ 表示选取属性,
. 选取当前节点;
.. 选取当前节点的父节点;
*匹配任何元素节点;
@* 匹配任何属性节点;
node() 匹配任何类型的节点;
example: response.xpath(‘//div[@class=”abc”]/text()’)

路径: |
//book/title | //book/price 选取 book 元素的所有 title 和 price 元素。
//title | //price 选取文档中的所有 title 和 price 元素。
/bookstore/book/title | //price 选取属于 bookstore 元素的 book 元素的所有 title 元素,以及文档中所有的 price 元素。

谓语(Predicates):谓语用来查找某个特定的节点或者包含某个指定的值的节点。
谓语被嵌在方括号中。
example:
/bookstore/book[1] 选取属于 bookstore 子元素的第一个 book 元素。
/bookstore/book[last()] 选取属于 bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1] 选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/book[position()<3] 选取最前面的两个属于 bookstore 元素的子元素的 book 元素。
//title[@lang] 选取所有拥有名为 lang 的属性的 title 元素。
//title[@lang=’eng’] 选取所有 title 元素,且这些元素拥有值为 eng 的 lang 属性。
/bookstore/book[price>35.00] 选取 bookstore 元素的所有 book 元素,且其中的 price 元素的值须大于 35.00。
/bookstore/book[price>35.00]/title 选取 bookstore 元素中的 book 元素的所有 title 元素,且其中的 price 元素的值须大于 35.00。

xpath函数库:
http://www.w3school.com.cn/xpath/xpath_functions.asp

PS:此文仅供记录交流,不作他用

0 0
原创粉丝点击