XPATH的基本用法

**XPath 语法

XPath(XML Path,XML 路径)是在 XML 文档中导航和选择元素的查询语言。它由
W3C 于 1999 年创建,在 Python、Java 和 C# 这些语言中有时会用 XPath 来处理 XML
文档。
虽然 BeautifulSoup 不支持 XPath,但是本书中的很多库(lxml、Selenium、Scrapy 等)
都支持。它的使用方式通常和 CSS 选择器(比如 mytag#idname )一样,虽然它原本被
设计用于处理更规范的 XML 文档而不是 HTML 文档。
在 XPath 语法中有四个重要概念。


• 根节点和非根节点
♦ /div 选择 div 节点,只有当它是文档的根节点时
♦ //div 选择文档中所有的 div 节点(包括非根节点)
• 通过属性选择节点
♦ //@href 选择带 href 属性的所有节点
♦ //a[@href=’http://google.com‘] 选择页面中所有指向 Google 网站的链接
• 通过位置选择节点
♦ //a[3] 选择文档中的第三个链接
♦ //table[last()] 选择文档中的最后一个表
♦ //a[position() < 3] 选择文档中的前三个链接
• 星号( * )匹配任意字符或节点,可以在不同条件下使用
♦ //table/tr/* 选择所有表格行 tr 标签的所有的子节点(这很适合选择 th 和 td 标
签)
♦ //div[@*] 选择带任意属性的所有 div 标签
当然,XPath 还有很多高级的语法特征。经过这些年的发展,它已经变成一种非常复
杂的查询语言,可以使用布尔类型、函数(如 position() ),以及大量这里没介绍的操
作符。
如果这里介绍的几个 XPath 功能解决不了你的 HTML 或 XML 元素选择问题,请参考
微软的 XPath 语法页面(https://msdn.microsoft.com/en-us/enus/library/ms256471)。**

(摘抄自Python网络数据采集一书)


你可能感兴趣的:(XPATH的基本用法)