Python操作lxml库实战之Xpath篇

作者:醉蕤 时间:2023-12-26 23:08:00 

一、Xpath概述

1、Xpath简介

Xpath(XML Path Language) 是一门在 XML 文档中查找信息的语言,可以用来在XML文档中对元素和属性进行遍历。XPath 用于在 XML 文档中通过元素和属性进行导航。其是一种路径语言(XML Path Language),用来确定XML文档中某部分的位置。

XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初XPath的提出的初衷是将其作为一个通用的、介于XPointerXSL间的语法模型。但是XPath很快的被开发者采用来当作小型*查询语言被广泛使用。

2、 Xpath的安装

Xpath只是 lxml 库中的一个模块,想要使用 Xpath 那么就需要安装 lxml 库

pip install lxml

二、Xpath的常用规则

1、路径查找

Xpath 的主要语法

Python操作lxml库实战之Xpath篇

2、节点查找

查找节点的一些语法

Python操作lxml库实战之Xpath篇

3、未知节点

当我们匹配时会出现路径不确定的情况,这个时候我们就要涉及到匹配未知节点。匹配未知节点也有对应的语法。

Python操作lxml库实战之Xpath篇

4、获取节点中的文本

通过 属性方法可以获取属性内的内容,但是位于节点之间的内容无法获取到,这个时候就可以通过 text() 与 string() 方法来获得其中的文本。

通过 text() 获取某个节点中的文本

In [1]: page.xpath('//li/a[3]/text()')
Out[1]: ['霸道总裁爱上我', '斗罗大陆']
#通过 text() 属性可以很轻松的获取标签之间的文本。

通过 string() 获取某个节点中的文本

In [1]: page.xpath('string(//li[1]/a[3])')
Out[1]: '霸道总裁爱上我'

5、选取多个路径

需要同时查找多个条件时可以通过在路径表达式中使用管道符("|"),选取若干个路径

In [1]: page.xpath('XXXXXXX | XXXXXXXtext()')
Out[1]: ['']

来源:https://blog.csdn.net/m0_63794226/article/details/126377840

标签:python,lxml,xpath
0
投稿

猜你喜欢

  • 使用Pytorch搭建模型的步骤

    2022-03-05 21:28:38
  • Python调用Jar包的两种方式小结

    2023-07-26 06:29:12
  • php 使用 __call实现重载功能示例

    2023-07-13 20:10:28
  • Python爬虫HTPP请求方法有哪些

    2023-07-25 16:55:06
  • Python中关于property使用的小技巧

    2021-01-25 04:35:44
  • python 网络编程详解及简单实例

    2021-09-02 06:40:56
  • 打造设计你自己的字体 Ⅲ

    2008-03-14 07:52:00
  • CSS 那些事儿

    2008-12-02 18:19:00
  • Python中Tkinter组件Menu的具体使用

    2023-09-11 12:46:26
  • opencv读取视频并保存图像的方法

    2023-02-21 17:30:16
  • python 实现多线程下载m3u8格式视频并使用fmmpeg合并

    2022-04-18 22:15:37
  • 长文章自动分页类

    2008-09-10 12:11:00
  • SQL 字母数字混合型字段 按里面的数字排序

    2010-04-23 18:18:00
  • python如果快速判断数字奇数偶数

    2023-11-28 20:13:59
  • 一个用Ajax做的用户名验证程序

    2007-10-21 20:40:00
  • 向外扩展SQL Server 实现更高扩展性

    2008-12-18 14:45:00
  • 运行asp.net程序 报错:磁盘空间不足

    2011-11-03 17:16:22
  • django写单元测试的方法

    2021-02-04 19:17:28
  • 构建可视化 web的 Python 神器streamlit

    2021-05-03 16:56:05
  • Python真题案例之二分法查找详解

    2023-09-23 01:39:07
  • asp之家 网络编程 m.aspxhome.com