xpath定位

xpath常用函数

child   选取当前节点的所有子节点
parent   选取当前节点的父节点
descendant   选取当前节点的所有后代节点
ancestor   选取当前节点的所有先辈节点
descendant-or-self   选取当前节点的所有后代节点及当前节点本身
ancestor-or-self   选取当前节点所有先辈节点及当前节点本身
preceding-sibling   选取当前节点之前的所有同级节点
following-sibling   选取当前节点之后的所有同级节点
preceding   选取当前节点的开始标签之前的所有节点
following   选去当前节点的开始标签之后的所有节点
self   选取当前节点
attribute   选取当前节点的所有属性
namespace   选取当前节点的所有命名空间节点
节点层级[分隔符]
nodename 选取此节点的所有子节点。
/ 从根节点选取
// 从当前节点选择开始匹配,不考虑它们的位置
. 选取当前节点
选取当前节点的父节点
@ 选取属性
对于一些既没id又没属性标识,同时其他属性都是动态的情况就很难通过简单的方式进行定位

Contains函数
contains函数,我们可以提取匹配特定文本的所有元素

sibling函数
通过sibling函数我们可以提取指定元素的所有同级元素,即获取目标元素的所有兄弟节点

测试链接参考
https://book.douban.com/


在示例图中的文字属性没有直接的标签标识,这时需要用到following

contains:

         book_put_date = '/'.join(new_root.xpath('//span[contains(text(),"出版年")]/following::text()[1]'))book_price = '/'.join(new_root.xpath('//span[contains(text(),"定价")]/following::text()[1]'))ISBN = '/'.join(new_root.xpath('//span[contains(text(),"ISBN")]/following::text()[1]'))  #following::text()锁定文字标签后边伴随的文字

sibling

     ISBN = '/'.join(new_root.xpath('//span[contains(text(),"ISBN")]'))# 锁定ISBN这个文字标签的同级文字#返回结果应该为:出版年,页数......的同级文字

xpath following语法解释定位相关推荐

  1. CSS选择器与Xpath常用语法及对比

    文章目录 写在前面 CSS选择器基本语法 一些不足 Xpath查询基本语法 二者的主要对比 相同 不同 语法方面 写在前面 写爬虫时候经常遇到HTML元素的定位问题,针对这个问题,主流的两种思路是CS ...

  2. 【selenium自动化】04 xpath高级语法css高级语法

    xpath高级语法 # /html/body/section/div[1]/div[3]/ul/li[2]/a/i # xpath使用路径表达式来匹配xml文档或html文档中的节点或节点集 # 这个 ...

  3. python爬虫xpath的语法

    有朋友问我正则,,okey,其实我的正则也不好,但是python下xpath是相对较简单的 简单了解一下xpath: XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML ...

  4. jqurey操作select 语法解释

    jQuery获取Select选择的Text和Value: 语法解释: 1. $("#selectId").change(function(){ ... }); //为Select添 ...

  5. 转载:XPath基本语法

    出处:http://www.cnblogs.com/Miko2012/archive/2012/10/26/2740840.html XPath的语法最基本的节点之间用/,属性用@,还有几个函数记住了 ...

  6. wbe自动化测试----xpath定位与CSS定位

    火狐插件安装插件 1. 2. 3. 4. 5.也可以直接搜索下载 2.3.1 xpath:属性定位 2.于是可以用以下xpath方法定位 2.3.2 xpath:其它属性 1.如果一个元素id.nam ...

  7. xpath常用的元素定位方式

    xpath常用的元素定位方式 xpath是比较常用的一种定位元素的方式,因为它很方便,缺点是,消耗系统性能.如果Xpath使用的比较好,几乎可以定位到任何页面元素,而且受页面变化影响较小.(以下是个人 ...

  8. python将图片转化为pdf,selenium自动化测试,xpath的语法

    一:python将图片转化为pdf import glob import fitz import osfrom matplotlib import pyplot as pltdef pic2pdf(p ...

  9. xpath语法解释--following-sibling--contains

    提取节点的层级分隔符: nodename 选取此节点的所有子节点. / 从根节点选取. // 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置. . 选取当前节点. .. 选取当前节点的父节点 ...

最新文章

  1. 综述 | Google-斯坦福发布深度学习统计力学
  2. [扫盲] Salesforce.com: 业界云计算(Cloud Computing)的主要倡导者之一
  3. C语言求最大公约数欧几里得Euclid算法(附完整源码)
  4. cmd弄电脑滚绿代码_windows10点击“此电脑”——“管理”会出现管理员已阻止你运行此应用。有关详细信息。。。...
  5. 如何使用git rm 删除文件名里带空格的文件名
  6. 用于将类型从double转换为int的C#程序
  7. Java Web-网页基础-HTML-选择器Selector-DOM
  8. 【MyBatis笔记】02-MyBatis配置SQL打印
  9. Spring源码分析:Bean加载流程概览及配置文件读取
  10. 深度学习之激活函数详解
  11. EasyRecovery如何恢复CMake项目文件
  12. gg 修改器游戏被保护_GFX画质修改器120帧下载
  13. Python网络编程之基于socket实现文件上传
  14. 详解健康体检信息管理系统技术开发
  15. 认识 KEGG PATHWAY 数据库
  16. 使用opencv和python进行智能图像处理pdf_OpenCV图像处理编程实例 PDF 高清版
  17. 千方百剂创建账套服务器文件,千方百剂辅助工具使用手册(图解
  18. Python:Dir及str函数
  19. Mac OS X 系统目录结构
  20. Mathorcup数学建模竞赛第六届-【妈妈杯】B题:小区车位分布的评价和优化模型(附特等奖获奖论文和Java代码)

热门文章

  1. Axure RP原型设计|全实战项目演练从入门到精通-姜浩-专题视频课程
  2. js触摸(touch)事件
  3. 关于sessionStorage,localStorage和cookie三者之间相同点与不同点
  4. vue做数字滚动效果
  5. 凯诺克斯品牌百科介绍
  6. CSS中关于滚动条样式设置的代码实例
  7. auc计算 matlab代码,AUC计算
  8. 堆和优先级队列4:不泡妹子都要会的LeetCode7道题之二
  9. java分割子字符串,Java 字符串分割截取的方法 (substring,split,StringTokenizer,indexOf,lastIndexOf)...
  10. C++实现2048小游戏(转载)