xpath基础入门

一、XPath是什么

XPath 定位 HTML 文档中的元素的工具 XPath 是一种表达语言,旨在支持XML文档的查询或转换。 XPath由万维网联盟(W3C) 于 1999 年定义。 XPath支持 XML 的应用程序(例如 Web 浏览器)和许多编程语言都支持 XPath。 XPath 语言基于XML 文档的树表示,并提供在树中导航、按各种标准选择节点的能力。

二、XPath的用途

XPath 用于在 XML 文档中通过元素和属性进行导航。当然作为一名爬虫程序员,更多的还是会将XPath应用于Python爬虫中。

三、XPath的优点

  • XPath 可以选择 XML 文档中的任何节点,包括元素、属性、文本等。
  • XPath 支持复杂的逻辑关系,例如选择任意层次的子节点,并且可以使用通配符和谓词进行筛选。
  • XPath 可以在不同的环境中使用,例如在 XSLT 中使用 XPath 进行数据转换。
  • 简单易学,容易上手,操作难度低。
  • Selecting Nodes(选择节):

    一些非常有用的路径表达式:

    表达式描述
    nodenameSelects all child nodes of the node[选择所有目前节的子节]
    /Selects from the root node[从根节进行选择]
    //Selects nodes in the document from the current node that match the selection no matter where they are [选择文档中相吻合的节而不管其在文档的何处]
    .Selects the current node[选择当前节]
    ..Selects the parent of the current node[当前节的父节]
    @Selects attributes[选择属性]

如何使用呢 首先安装 pip install lxml

一个小需求 1:馒头,2:火影,贝吉特,比鲁斯,界王 3:火影,贝吉特,比鲁斯,界王,鸟鸣,18号,19号 4:单独 鸟鸣,鸟二 五:超级赛尔人2

结果


如何用xpath 解析 html

这是我写的html 结果

拿到了数据

有一个小需求 利用xpath拿到 1:拿到谷歌,百度,搜狗 2:百度 3:单独拿到百度 4:找到href的值

4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/737397.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tensorflow2.0笔记 - 均方差MSE和交叉熵CROSS ENTROPHY作为损失函数

本笔记主要记录使用MSE和交叉熵作为loss function时的梯度计算方法。 import tensorflow as tf import numpy as nptf.__version__#softmax函数使用 #参考资料:https://blog.csdn.net/u013230189/article/details/82835717 #简单例子: #假设输出的LOGIT…

24计算机考研调剂 | 佳木斯大学

佳木斯大学计算机科学与技术、电子信息招调剂生 考研调剂招生信息 学校:佳木斯大学 专业:工学->电子信息 年级:2024 招生人数:- 招生状态:正在招生中 联系方式:********* (为保护个人隐私,联系方式仅限APP查看) 补充内容 黑龙江省自主智能与信息处理重点实验室马慧彬…

maven 安装

maven 安装 maven 下载解压添加自定义仓库位置修改配置文件环境变量配置测试idea 设置 maven 下载 下载 Apache Maven 解压 添加自定义仓库位置 repository 修改配置文件 修改 maven\conf\settings.xml 文件, 主要是 localRepository (更改自己路径) 和 mirro…

基于SpringBoot+Vue+ElementUI+Mybatis前后端分离管理系统超详细教程(五)——多条件搜索并分页展示

前后端数据交互 书接上文,我们上节课通过前后端数据交互实现了分页查询和单条件搜索分页查询的功能,最后留了个小尾巴,就是把其他两个搜索条件(email,address)也加进来,实现多条件搜索并分页展示。这节课我…

计算机网络-第5章 运输层(1)

主要内容:进程之间的通信与端口、UDP协议、TCP协议、可靠传输原理(停止等待协议、ARQ协议)、TCP报文首部、TCP三大题:滑动窗口、流量控制、拥塞控制机制 5.1 运输层协议概述 运输层向它上面的应用层提供通信服务,真正…

深入理解React中的useState:函数组件状态管理的利器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

24计算机考研调剂 | 燕山大学【211】

燕山大学接收调剂研究生 考研调剂招生信息 学校:燕山大学 专业:工学->电子科学与技术->物理电子学 年级:2024 招生人数:5 招生状态:正在招生中 联系方式:********* (为保护个人隐私,联系方式仅限APP查看) 补充内容 要求考生一志愿报考211及以上全国重点院校&…

嵌入式学习第二十六天!(网络传输:TCP编程、HTTP协议)

TCP通信: 1. TCP发端: socket -> connect -> send -> recv -> close 2. TCP收端: socket -> bind -> listen -> accept -> recv -> send -> close 3. TCP需要用到的函数: 1. co…

蓝桥杯2023真题(4)

1.景区导游(树上前缀和、最近公共祖先) 思路 路线:2 -> 6 -> 5 -> 1 1.一个点都不去去掉的花费记作sum 2.去掉第一个点,sum - cost[2 -> 6] 3.去掉第二个点,sum - cost[2 -> 6] - cost[6 -> 5] co…

计算机网络笔记(湖科大教书匠版本)

第一章、 ①三种交换方式 电路交换、分组交换、报文交换(被分组交换所取代) 1.电路交换:会一直占用通道,不适合计算机之间的数据通信 2.分组交换:通常我们把表示该数据的整块数据称为一个报文。 先把较长的报文划…

下载、安装并配置 Node.js

文章目录 1. 下载2. 自定义安装3. 添加环境变量4. 验证5. 修改下载位置6. npm 换源7. 测试 ➡️➡️➡️来源:Simplilearn.com Node.js 是一个开源、跨平台的 JavaScript 运行时环境和库,用于在客户端浏览器之外运行 web 应用程序。 Ryan Dahl 在2009年开…

React useMemo钩子指南:优化计算性能

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

萝卜大杂烩 | Polars ,最强Pandas平替(内含实操代码,建议收藏!)

本文来源公众号“萝卜大杂烩”,仅用于学术分享,侵权删,干货满满。 原文链接:Polars (最强Pandas平替) 本文章转自:数据studio 1 介绍 Polars是一个用于操作结构化数据的高性能DataFrame库,可以说是平替…

leetcode 热题 100_旋转图像

题解一&#xff1a; 翻转数组&#xff1a;先将数组沿右上-左下对角线翻转&#xff0c;再将数组上下翻转。 class Solution {public void rotate(int[][] matrix) {int n matrix.length;for (int i 0; i < n; i) {//沿右上-左下对角线翻转for (int j 0; j < n - i - 1…

简单句,并列句【语法笔记】

1. 简单句&#xff0c;并列句本质分别是什么 2. 如何区分简单句和并列句 3. 连接词 4. 简单句的五大基本句型 5. 有连接词&#xff0c;未必都是并列句&#xff0c;这是为什么

为何系统对接采用定制开发周期通常比集成平台更长

在信息化建设的浪潮中&#xff0c;系统对接是实现企业内外部系统间数据共享和业务协同的关键环节。在对接开发过程中&#xff0c;定制开发与平台开发是两种主要的实现方式&#xff0c;而普遍观点认为&#xff0c;定制开发对接的周期通常要比平台开发更长。本文将深入探讨这一现…

物奇平台超距断连无蓝牙广播问题解决方法

是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 物奇平台超距断连无蓝牙广播问题解决方法 一 问题反馈 二解决方法: 1 运行流程分析 对应代…

智能合约开发基础知识:最小信任机制、智能合约、EVM

苏泽 大家好 这里是苏泽 一个钟爱区块链技术的后端开发者 本篇专栏 ←持续记录本人自学两年走过无数弯路的智能合约学习笔记和经验总结 如果喜欢拜托三连支持~ 专栏的前面几篇详细了介绍了区块链的核心基础知识 有兴趣学习的小伙伴可以看看http://t.csdnimg.cn/fCD5E关于区块…

线上又出问题了!又是特殊场景,哎呀,当时怎么没有想到!

目录标题 导读01.为什么经常会发生测试场景覆盖不全的问题?02.如何提升测试覆盖度?03.综述 导读 在我们的测试工作中&#xff0c;是不是经常遇到这样的情形&#xff0c;发生了线上问题&#xff0c;产品、研发或者测试同学一拍脑袋&#xff1a;当时怎么没有想到&#xff0c;怎…

Vue.js+SpringBoot开发海南旅游景点推荐系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户端2.2 管理员端 三、系统展示四、核心代码4.1 随机景点推荐4.2 景点评价4.3 协同推荐算法4.4 网站登录4.5 查询景点美食 五、免责说明 一、摘要 1.1 项目介绍 基于VueSpringBootMySQL的海南旅游推荐系统&#xff…