Excel中怎样计算面积? Excel制作计算圆面积工具的教程-英雄云拓展知识分享
112
2023-11-13
【摘要】 本书摘自《Python网络爬虫 从入门到精通》一书中第2章,第4节,吕云翔、张扬和韩延刚等编著。
2.4 XPath 与lxml
2.4.1 XPath
XPath 也就是XML Path Language (译为 “XML 路径语言”),是一种用来在XML 文档
中搜寻信息的语言。这里先来介绍一下 XML 和 HTML 的关系。所谓的 HTML(HyperText Markup Language),也就是“超文本标记语言”,是 WWW 的描述语言,其设计目标是“创 建网页和其他可在网页浏览器中访问的信息”,而 XML 则是 Extentsible Markup Language (译为“可扩展标记语言”),其前身是SGML (标准通用标记语言)。简单地说,HTML 是用 来显示数据的语言(同时也是 html 文件的作用), XML 是用来描述数据、传输数据的语言 (对应 xml 文件,这个意义上 XML 十分类似于 JSON) 。 也有人说, XML 是对 HTML 的补 充 。XPath 可用来在 XML 文档中对元素和属性进行遍历,实现搜索和查询的目的, XML 与 HTML 紧密联系,开发者也可以使用 XPath 来对 HTML 文件进行查询。
XPath 的语法规则并不复杂,大家需要先了解 XML 中的一些重要概念,包括元素、属 性、文本、命名空间、处理指令、注释及文档。这些都是 XML 中的“节点”, XML 文档本 身就是被作为节点树来对待的,每个节点都有一个parent (父节点),比如:
掌握这些基本内容就可以开始试着使用 XPath 了。不过在实际编程中,开发者一般不必 自己编写 XPath, 使 用 Chrome 等浏览器自带的开发者工具就能获得某个网页元素的 XPath 路径,然后通过分析感兴趣的元素的XPath 路径,就能编写对应的抓取语句。
2.4.2 Ixml 与 XPath 的使用
在 Python 中 用 于XML 处理的工具不少,比如 Python2 中 的 ElementTree API 等,不过 目前开发者们一般使用1xml 这个库来处理 XPath 。lxml 的构建基于两个 C 语言库:libxml2
和 libxslt, 因此,在性能方面1xml 的表现足以让人满意。另外, lxml 支 持 XPath 1.0、 XSLT 1.0、定制元素类,以及Python 风格的数据绑定接口,因此受到很多人的欢迎。
当然,如果机器上没有安装lxml, 首先也要用 “pip install lxml” 命令来进行安装,安装 时可能会出现 一 些问题(这是由 lxml 本身的特性造成的)。另外, lxml 还可以使用 easy install 等方式安装,更多详情可参照lxml 官方的说明,网址为: http://xml.de/installation.html。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~