码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Python操作lxml库(Xpath篇)


    在这里插入图片描述​ 

    活动地址:CSDN21天学习挑战赛

    学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。

    学习日记

    目录

    学习日记

    一、Xpath概述

    1、Xpath简介

    2、 Xpath的安装

    二、Xpath的常用规则

    1、路径查找

    2、节点查找

    3、未知节点

    4、获取节点中的文本

    5、选取多个路径


    一、Xpath概述


    1、Xpath简介

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

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

    2、 Xpath的安装

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

    pip install lxml

    二、Xpath的常用规则

    1、路径查找

    Xpath 的主要语法

    2、节点查找

    查找节点的一些语法

    3、未知节点

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

    4、获取节点中的文本

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

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

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

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

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

    5、选取多个路径

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

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

  • 相关阅读:
    MySQL数据库——存储过程-条件处理程序(通过SQLSTATE指定具体的状态码,通过SQLSTATE的代码简写方式 NOT FOUND)
    智慧仓储解决方案-最新全套文件
    【Linux 从基础到进阶】自动化部署工具(Jenkins、GitLab CI/CD)
    关于罗克韦尔跟西门子PLC之间通讯的解决方案
    Python灰帽编程——初识Python上篇
    使用React18+Ts创建项目
    Kafka 集群安装
    计算机网络复习
    星际争霸之小霸王之小蜜蜂(十一)--杀杀杀
    Mozilla Firefox侧边栏和垂直标签在131 Nightly版本中开始试用
  • 原文地址:https://blog.csdn.net/m0_63794226/article/details/126377840
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号