Xpath的语法

2023-05-16

Xpath  是一门从html中提取数据的语言:

Xpath的语法:   1.   '/'是选择节点(标签):' /html/head/meta'  :表示的是能够选中html 下的head下的所有的meta 标签

 2.  ‘//’:能够从任意节点开始选择         ‘//li’: 表示的是当前页面上的所有li 标签     '/html/head//link' :表示的是head 下的所有的link标签

head下的子节点和子孙节点的所有的link标签。

3.‘@符号的用法’:  选择具体某个元素  ‘//div[@class='xxx']/ul/li’   选择‘xxx’的div下的ul下的li   那个‘[]’表示的是选中一个区块,然后再在这个区块('xxx')下选择其他的标签。

‘a/@href’  :表示的是选择a的href的值

4.获取文本用‘/a/text()’   :获取a下的文本

‘/a//text()’: 获取a下的所有的文本

从一个节点选到另外一个节点用的是‘/’ ,从根节点选择的时候也是用‘/’ ,  从任意节点选择的话就用‘//’,这个也表示选择全部。

'./'  表示的是当前标签下的   比如table.xpath(".//div")  ,表示的是当前table下的div

 

Xpath 有很多种选择的,推荐使用谷歌的插件  Xpath  Helper  进行测试,然后拿数据,不用一步一步地定位

用//table  时要注意其他地方也会有相同的table,以此类推。

通过  竖线  | 可以实现表达式的拼接。

使用xpath helper 或者是chorme 中的copy  xpath 都是从element中提取的数据,但是爬虫获取的是url对应的响应,往往和element不一样。在确保爬虫获取url的响应和element一样的时候才可以用这些工具,或者要的数据一样。在后续的爬虫代码里面可能用不到它,要自己用肉眼去看去写。
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Xpath的语法 的相关文章

随机推荐

  • 动态规划——木棍加工

    题目链接 题目描述 一堆木头棍子共有n根 xff0c 每根棍子的长度和宽度都是已知的 棍子可以被一台机器一个接一个地加工 机器处理一根棍子之前需要准备时间 准备时间是这样定义的 xff1a 第一根棍子的准备时间为1分钟 xff1b 如果刚处
  • NodeBB论坛搭建

    NodeBB是一个开源的Node js论坛 xff0c 下面记录下搭建过程 基于Centos7 64位操作系统 xff1a 1 关闭SELinux vim etc sysconfig selinux 2 安装MongoDB 2 1 新建文件
  • centos 卸载mysql

    1 通过rpm命令卸载 查询已安装的mysql组件 rpm qa grep i mysql 卸载上一步查询到的组件 rpm qa grep i 具体的组件 rpm ev nodeps mysql community release el7
  • 【C/C++】C语言复制字符串及复制函数汇总(strcpy()/memcpy()/strncpy()/memmove())

    目录 strcpy 举例 xff1a memcpy 举例 xff1a strncpy 举例 xff1a memmove 举例 xff1a 我们首先来考虑一个简单的问题 xff0c 我们定义了一个字符串 xff0c 然后想要复制这个字符串 x
  • 打不开MicrosoftStore用命令在Win10安装Ubuntu1804

    用Azure Function APP部署Python接口 xff0c 但只支持Linux 公司有部机装了Linux xff0c 但在恶心猥琐男手上 只好在自己电脑装个Linux系统 xff0c 教程大都是从Microsoft Store安
  • 深度学习【62】旋转不变性人脸检测PCN

  • linux记录(一个全新的环境)安装miniconda3

    查看Linux的版本 lsb release a 想要安装miniconda xff0c 但是显示没有wget 所以先安装weget apt get install y wget 运行了以后报错 xff0c 显示没有安装wget xff0c
  • java键盘输入

    import java util Scanner 引入函数 public class Helloworld public static void main String args TODO Auto generated method stu
  • python学习

    coding utf 8 34 34 34 Spyder Editor This is a temporary script file 34 34 34 a 61 4 b 61 3 print a 43 b a 61 39 ccv 39 p
  • 高数Umaru系列(9)——哈士奇

    高数Umaru系列 xff08 9 xff09 哈士奇 Time Limit 1000 ms Memory Limit 65536 KiB Problem Description 由于高数巨养的喵星人太傲娇了 xff0c 要天天吃新鲜猫粮而
  • python 去除空格

    usr bin env python3 coding utf 8 39 39 39 去除多余的空格 39 39 39 string 61 34 My name is hyaden 34 print string str list 61 st
  • 简单的代码生成程序

    简单的代码生成程序 通过三地址代码序列生成计算机的目标代码 在生成算法中 对寄存器的使用顺序为 寄存器中存有 gt 空寄存器 gt 内存中存有 gt 以后不再使用 gt 最远距离使用 Input 单组输入 给定输出的三地址代码的个数和寄存器
  • DAG优化

    DAG优化 Problem Description 大家都学过了代码优化 xff0c 其中有一个DAG优化 xff0c 这次我们就练习这个操作 Input 输入第一行为一个整数 xff4e n lt 100 xff0c 表示该组输入的表达式
  • 翻译布尔表达式

    翻译布尔表达式 这是用c 43 43 实现的布尔表达式 Problem Description 大家都学过了布尔表达式的翻译 xff0c 其中有一个拉链 xff0d 回填技术 xff0c 这次我们就练习这个技术 Input 多组输入 xff
  • docker命令大全以及常用写法举例

    内容来自公众号赫连小伍 xff0c 转载请注明出处 login xff1a 登录到远程仓库search xff1a 从远程仓库搜索镜像push xff1a 把本地镜像推送到远程仓库pull xff1a 从远程仓库拉取或更新镜像images
  • 虚拟机安装UOS系统--(仅命令行版)图文详解

    UOS 由深度操作系统deepin为基础 xff0c 经过定制而来的产品 考虑到后者是基于 Linux 的国产操作系统的一员 xff0c UOS 应该拥有相同的定位 UOS 拥有 家庭版 专业版 服务器版 三个分支 xff0c 个人版不再更
  • 表达式语法分析——递归子程序法

    表达式语法分析 递归子程序法 写在前面 xff1a 切记不要删除代码部分对于函数的声明 xff0c 以免造成error xff01 xff01 xff01 通过函数的声明避免函数定义的先后顺序 递归子程序法是一种确定的自顶向下语法分析方法
  • 小C语言--词法分析程序

    小C语言 词法分析程序 Problem Description 小C语言文法 1 lt 程序 gt lt main关键字 gt lt 声明序列 gt lt 语句序列 gt 2 lt 声明序列 gt lt 声明序列 gt lt 声明语句 gt
  • 合并石子问题

    我们常见的石子合并问题一般就三种 第一种 n堆石子 xff0c 每次合并的花费为两堆石子数目之和 xff0c 求怎样合并可以使得合并为一整堆石子的总花费最少 实际上这就是HUfffman编码的变形 xff0c 运用贪心策略 xff0c 每次
  • Xpath的语法

    Xpath 是一门从html中提取数据的语言 xff1a Xpath的语法 xff1a 1 39 39 是选择节点 xff08 标签 xff09 xff1a 39 html head meta 39 表示的是能够选中html 下的head下