XPath和CSS定位及使用方法
XPath 即为 XML 路径语言(XML Path Language),它是一种用来确定 XML 文档中某部分位 置的语言。XPath 基于 XML 的树状结构,提供在数据结构树中找寻节点的能力。XPath 使用路径 表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径(path)或步(steps)来选取的。 这些路径表达式和在常规的计算机文件系统中看到的表达式非常相似。
下表列出了 XPath 的常用规则:

XPath 可以通过语法准确地定位到我们需要提取的数据,下表列出了 XPath 的常用语法:

下面通过一个示例来演示如何用 Python 中的 XPath 语法来提取我们想要的元素。例如,要提 取博客园第一个新闻的标题,首先打开 http://news.cnblogs.com 网页,在浏览器中按“F12”键,如下图所示:

提取元素的代码如下:


接下来,我们讨论的是CSS选择器。
在 CSS 中,选择器是一种模式,用于选择需要添加样式的元素。HTML 页面中的元素就是通 过 CSS 选择器进行控制的。
CSS 选择器可以通过语法准确地定位到我们需要提取的数据,下表列出了 CSS 选择器的常 用语法。

通过以上介绍,可以看出 CSS 选择器比 XPath 简单,对于学习过前端的人来说,CSS 选择器 是非常容易入手的。但是,CSS 选择器没有 XPath 强大。我建议还是用 XPath 作为提取网页元素的主要语言。