`
m635674608
  • 浏览: 5054902 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

xpath选择当前结点的子节点

 
阅读更多

在通过selenium使用xpath选择节点的时候,可能会遇到这么一种情况:在指定的当前节点下搜索满足要求的节点。

 
node = driver.find_element_by_xpath("//div[@class='WB_cardwrap S_bg2 clearfix']")
BZNC = node.find_element_by_xpath("//div[@class='feed_content wbcon']/a[@class='W_texta W_fb']").text
BZZY = node.find_element_by_xpath("//div[@class='feed_content wbcon']/a[@class='W_texta W_fb']").get_attribute("href")
 

以上代码有什么错误吗?貌似没有,一切都很完美。
先拿到node节点,然后在node节点的子节点中搜索满足条件的节点并取出text及属性。
but!运行的结果却是把整个html中所有满足条件的节点都找出来了,而并非是node节点下的!!!

仔细想一想,”//div”貌似就是搜索整个html下的div,即使是node下的find_element_by_xpath方法!
所以,只需要在”//”前面加上表示当前路径的”.”既可,也就是node.find_element_by_xpath(“.//div”)

 

http://blog.csdn.net/destinyuan/article/details/51297611

 

分享到:
评论

相关推荐

    对Xpath 获取子标签下所有文本的方法详解

    `child::text()`表示选取当前节点的所有直接子文本节点。`strip()`函数用于去除每个文本节点前后可能存在的空白。 3. **`normalize-space()` 函数** 当你需要保留子元素间的空白,或者统一处理空白(比如转换为...

    XPath 教程(XPath Tutorial)多国语言帮助手册.rar

    5. **选择符和函数**:XPath提供了丰富的选择符和函数来进一步过滤和操作节点集。例如,`[条件表达式]`可以用来选取满足特定条件的节点,`text()`函数则用于选取节点的文本内容。 6. **数字和字符串操作**:XPath...

    用xpath精确定位节点元素

    XPath允许基于节点间的亲属关系进行匹配,比如`ancestor::chapter`可以选取当前节点的所有祖先章节节点。同时,条件匹配允许结合逻辑运算符和函数来进一步细化选择标准,如`book[price > 50]`将选取价格超过50的书籍...

    xpath读取XML节点

    例如,"/"表示根节点,"."表示当前节点,".."表示父节点,而"//"则表示在任何层级下查找匹配的节点。 使用JDOM进行XPath操作需要以下步骤: 1. **导入依赖**:在Java项目中,首先需要添加JDOM库的依赖。如果使用...

    用XPath精确定位节点元素

    轴是XPath中指导节点选择的方向。常用的轴有:后代轴(child)、子轴(child::)、属性轴(attribute::)、父轴(parent::)、祖先轴(ancestor::)等。例如,“//element/child::node()”会选择所有“element”元素...

    在XML的根节点加入子节点

    - XSLT(Extensible Stylesheet Language Transformations)则用于转换XML文档,可以通过XPath选择特定的子节点,并定义它们如何转换成新的XML或HTML结构。 总结,向XML的根节点添加子节点是XML文档操作的重要部分...

    XmlHelper XPath路径表达式选取XML节点

    XPath路径表达式选取XML节点.doc 为XML中常用属性说明 XmlHelper.CS 一个类文件 包括对XML 文件的常规操作 xml字符串转换为dataTable DataTable 转换为xml 找出所有与pPath匹配路径的节点创建dataTable,并设置...

    Xpath详解.pdf

    * //:从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。 * .:选取当前节点。 * ..:选取当前节点的父节点。 * @:选取属性。 XPath 实战: * 选取节点:bookstore 选取 bookstore 元素的所有子节点。...

    Python解析网页-XPath和requests-html.xmind

    从当前节点选择直接子节点 // 从当前节点选择子孙节点 . 当前节点 .. 选取当前节点的父节点 @ 获取属性 高级用法说明 选择特定节点类型 node() 匹配任何节点 text() ...

    XPath Helper 2.0.2网页插件

    1. **节点选取**:XPath 提供了一套丰富的路径表达式,可以用来选取XML文档中的任何节点,如根节点(`/`)、当前节点(`.`)、父节点(`..`)、子节点(`child::`)、属性节点(`@`)等。 2. **节点测试**:XPath 支持多种...

    XPath教程

    此外,XPath还支持相对路径,如“./title”选取当前节点的直接子节点“title”。 XPath的运算符和函数丰富多样,它们使得XPath具备了强大的表达能力。运算符包括比较运算符(=、!=、<、>、、>=)、逻辑运算符(and...

    Xpath指南XPATH实例

    - XPath中的轴定义了节点之间的关系,比如`child`轴表示子节点,`parent`轴表示父节点,`attribute`轴表示属性,`self`轴表示自身,`following-sibling`轴表示同级后的节点等。 3. **选择节点**: - **选择元素...

    XPath官方文档 教程

    2. 路径:XPath使用路径表达式来定位节点,如 `/root/child` 表示从根元素选择子元素 `child`。 3. 变量与函数:XPath支持内置变量和函数,可以用于计算、字符串处理等操作。 三、XPath语法 1. 选择节点: - `/` ...

    xpath详解总结-很全面.docx

    当前节点表示当前执行 XPath 路径表达式的环境,父节点表示当前节点的父节点,根元素表示从文档根节点开始执行 XPath 路径表达式,根节点表示文档的根节点。 XPath 在实际应用中非常广泛,例如在 XSLT 和 XQuery 中...

    查看网页元素的xpath

    4. **选择器(Selectors)**:XPath 提供了多种选择器,如 `*` 代表任何元素,`.` 代表当前节点,`@` 用于选取属性。例如,`//input[@type='text']` 选取所有类型为 `text` 的 `input` 元素。 5. **函数与操作符**...

    uiautomatorviewer二次开发,增加xpath,Appium可用

    3. **使用XPath定位元素**:在分析的UI组件树中,新增的功能将允许用户选择一个元素,并生成对应的XPath表达式。 4. **整合到Appium测试脚本**:将生成的XPath复制到Appium的测试脚本中,用于元素的查找和交互操作。...

    XPath基础.docx

    2. **子节点选择**:连续的`/`符号用于选取子节点。在例子中,如果我们要选取`<h2>`标签,可以使用`/html/body/h2`。这表示从根节点`<html>`开始,然后选取`<body>`子节点,最后选取`<h2>`。 3. **任意位置的选择**...

    xpath表达式测试小工具

    此外,理解XPath的相对路径和绝对路径、节点选择的优先级以及如何使用函数处理节点集合等,都是提升XPath技能的关键。 总之,"XPath表达式测试小工具"是XML开发者的得力助手,它能够简化XPath的学习过程,提高工作...

    XPath 教程.docx

    - 后代节点:节点的子节点、子的子节点等,`<bookstore>`的后代包括所有在它之下的元素。 XPath路径表达式是选取这些节点的关键工具: - `nodename`:选取当前上下文中的所有该名称的节点。 - `/`:从根节点开始...

    XPath详解PDF版

    例如,“BBB/DDD”表示从当前节点开始,选择名为“BBB”的子节点下的“DDD”节点。 #### 三、实例分析 ##### 实例1:绝对路径的选择 ``` /AAA ``` 这个表达式选取了名为“AAA”的根节点。例如,在以下XML文档中...

Global site tag (gtag.js) - Google Analytics