Xpath获取指定元素相邻的不被标签括起来的文本

这篇具有很好参考价值的文章主要介绍了Xpath获取指定元素相邻的不被标签括起来的文本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

#1.Xpath获取指定元素相邻的不被标签括起来的文本

div/preceding-sibling::a[1] 与div上面相邻的第一个a标签元素
div/following-sibling::a[1] 与div下面相邻的第一个a标签元素
div/preceding-sibling::text()[1] 与div上面相邻的第一个非标签文本元素
div/following-sibling::text()[1] 与div下面相邻的第一个非标签文本元素

实战:

如图:
Xpath获取指定元素相邻的不被标签括起来的文本
已知图片中标注1、2、3对应的内容

在业务中我需要获取标志2对应的"58"这个值,但是这个值不包括在某个标签中,在span“集数”和br标签之间,为了减小获取"58"这个值不被之前的标签数量的影响

  1. 先获取标签1所对应的元素,因为标签1有property="v:initialReleaseDate"这个属性和属性值,所以很容易用xpath获取,且具有唯一性:
    //span[@property="v:initialReleaseDate"]

  2. 获取标签1元素对象之后,我们可以根据标签1为基准,算一下"58"这个值是相邻的第几个元素,如图可知除去span标签不看,是相邻2个元素(包括br在内)
    *[@id="info"]/span[@property="v:initialReleaseDate"]/following-sibling::text()[2]

    之后就可以拿到标注2的值
    Xpath获取指定元素相邻的不被标签括起来的文本

  3. 成功拿到标注2的值“58”后,如果我 们好想再拿到标注3的"45分钟"这个值, 那我们就算算要相邻几个元素, 经过不断修改following-sibling::text()[index]中index的值最后发现是相邻的第4个值。
    *[@id="info"]/span[@property="v:initialReleaseDate"]/following-sibling::text()[4]
    Xpath获取指定元素相邻的不被标签括起来的文本

#2. 获取a标签中onclick()内的sid值

<div class="pic">
      <a class="nbg" href="https://www.douban.com/link2/?url=https%3A%2F%2Fmovie.douban.com%2Fsubject%2F26683290%2F&amp;query=%E4%BD%A0%E7%9A%84%E5%90%8D%E5%AD%97&amp;cat_id=1002&amp;type=search&amp;pos=0" target="_blank" onclick="moreurl(this,{i: '0', query: '%E4%BD%A0%E7%9A%84%E5%90%8D%E5%AD%97', from: 'dou_search_movie', sid: 26683290, qcat: ''})" title="君の名は。" ><img src="https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2395733377.webp"></a>
</div>

onclick="moreurl(this,{i: '0', query: '%E4%BD%A0%E7%9A%84%E5%90%8D%E5%AD%97', from: 'dou_search_movie', sid: 26683290, qcat: ''})"文章来源地址https://www.toymoban.com/news/detail-746420.html

data = xpahContext(context).xpath('//*[@id="content"]/div/div[1]/div[3]/div[1]/div[1]/div[2]/div/h3/a/@onclick')
sid = data[0][data[0].index("sid:") + 5 : data[0].index(", qcat")]

#3. xpath判断div的多个class中是否包含一个叫做paginator的class

//div[contains(@class, 'paginator')]

#4.获取 div 元素中的最后一个 a 标签

//div//a[last()]

到了这里,关于Xpath获取指定元素相邻的不被标签括起来的文本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python(四十九)获取列表指定元素的索引

    ❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无论你是学生、职场人士还是

    2024年02月15日
    浏览(51)
  • Python Selenium 获取动态网页指定元素的超链接

    本文是个人使用Python Selenium 获取动态网页指定元素的超链接的电子笔记,由于水平有限,难免出现错漏,敬请批评改正。 更多精彩内容,可点击进入Python日常小操作专栏或我的个人主页查看 熟悉Python 熟悉Requests 熟悉XPath 熟悉Selenium Python是一种跨平台的计算机程序设计语言。

    2024年01月19日
    浏览(73)
  • JS中常用的的选择器,JavaScript获取HTML标签元素

    getElementById是JavaScript中的一个DOM方法,用于根据元素的id属性获取HTML文档中的元素。该方法接受一个字符串参数,即元素的id属性值,并返回具有该id属性值的元素。如果没有找到匹配的元素,则返回null。 以下是一个示例,演示如何使用getElementById获取页面中的元素: 在这个

    2024年02月04日
    浏览(56)
  • leetcode 1743. 从相邻元素对还原数组

    题目链接:leetcode 1743 存在一个由 n 个不同元素组成的整数数组 nums ,但你已经记不清具体内容。好在你还记得 nums 中的每一对相邻元素。 给你一个二维整数数组 adjacentPairs ,大小为 n - 1 ,其中每个 adjacentPairs[i] = [ui, vi] 表示元素 ui 和 vi 在 nums 中相邻。 题目数据保证所有由

    2024年02月09日
    浏览(60)
  • css相邻元素边框重合问题,解决方案

    给每个元素设置margin-top以及margin-left为负的边框 我的解决方案是在宽度上下手,根据观察,发现一行三列,实际导致缺失的是两个边框的大小,那么将这两个边框的大小平分到每行三列模块的开宽度内即可解决,其他情况下,由此推导

    2024年03月08日
    浏览(37)
  • js调整table表格上下相邻元素顺序

    有时候我们会遇到要通过箭头控制table表格上下顺序的需求,如下: 点击向下就将该元素下移一位,下面的一位元素就移上来,点击向上就将该元素上移一位,上面的一位元素就移下来,也就是相邻元素互换位置顺序:

    2024年02月05日
    浏览(34)
  • 第1关:比较相邻两个元素求最大值

    任务描述 相关知识 编程要求 编程要求 测试说明 任务描述 本关任务:比较数组相邻两个元素求最大值 。 相关知识 比较相邻的元素。如果第一个比第二个大,就交换他们两个,对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对,最后的元素应该会是最大的数

    2024年02月05日
    浏览(44)
  • 【Dart 教程系列第 34 篇】Dart 之 indexOf、lastIndexOf 获取指定元素在字符串的索引

    这是【Dart 教程系列第 34 篇】,如果觉得有用的话,欢迎关注专栏。 indexOf 源码如下所示 语法 由前向后查找指定字符,返回值是 int 类型,如果有符合条件的则返回对应字符所在的索引,没有找到则返回 -1。 第一个参数是要查找的字符,支持正则表达式,后面如果看到 Pat

    2023年04月08日
    浏览(37)
  • 2023-03-26:给定一个二维数组matrix, 每个格子都是正数,每个格子都和上、下、左、右相邻。 你可以从任何一个格子出发,走向相邻的格子, 把沿途的数字乘起来,希望得到的最终数字中,结尾的0

    2023-03-26:给定一个二维数组matrix, 每个格子都是正数,每个格子都和上、下、左、右相邻。 你可以从任何一个格子出发,走向相邻的格子, 把沿途的数字乘起来,希望得到的最终数字中,结尾的0最多, 走的过程中,向左走或者向右走的拐点,最多只能有一次。 返回结尾最

    2024年02月09日
    浏览(49)
  • Jquery 如何获取子元素。如何找到所有 HTML select 标签的选中项。jQuery 里的 ID 选择器和 class 选择器有何不同

    可以使用 jQuery 的子选择器(Child Selector)或 find() 方法来获取子元素。 子选择器(Child Selector): 使用父元素的选择器和 \\\'\\\' 符号来选取该父元素的子元素。 例如:选取 id 为 \\\'parent\\\' 的元素内所有 class 为 \\\'child\\\' 的直接子元素。 find() 方法: 使用 jQuery 的 find() 方法来选取指定父

    2024年02月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包