`

xpath再学习(持续更新中)

 
阅读更多
目标XML代码:
<?xml version="1.0" encoding="ISO-8859-1"?>

<bookstore>

<book category="COOKING">
  <title lang="en">Everyday Italian</title>
  <author>Giada De Laurentiis</author>
  <year>2005</year>
  <price>30.00</price>
</book>

<book category="CHILDREN">
  <title lang="en">Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>

<book category="WEB">
  <title lang="en">XQuery Kick Start</title>
  <author>James McGovern</author>
  <author>Per Bothner</author>
  <author>Kurt Cagle</author>
  <author>James Linn</author>
  <author>Vaidyanathan Nagarajan</author>
  <year>2003</year>
  <price>49.99</price>
</book>

<book category="WEB">
  <title lang="en">Learning XML</title>
  <author>Erik T. Ray</author>
  <year>2003</year>
  <price>39.95</price>
</book>

</bookstore>

1. 选择所有的author节点
//author
2. 选择所有属性category="CHILDREN"的book节点
//book[@category="CHILDREN"]
3. 选择price为49.99的节点们
//book[price='49.99']/price
4. 选择第一个book下的所有子节点
//book[1]/child::node()
5. 选择price为49.99的节点的 前面 所有兄弟节点
//book[price='49.99']/price/preceding-sibling::node()
6.选择price为49.99的节点的 后面 所有兄弟节点
//book[price='49.99']/price/following-sibling::node()
7.选择第一个book下面的所有子节点的所有属性
//book[1]/child::node()/attribute::*
8.选择第一个book下面的所有子节点的lang属性
//book[1]/child::node()/attribute::lang
9.选择第三个book下面的有text的子节点的text
//book[3]/child::text()
10.选择第二个category属性
//@category[2]
11.选择当前节点的某一个属性
/attribute::(attribute name)




分享到:
评论

相关推荐

    Dom4j 解析Xml文档及 XPath查询 学习笔记

    **标题:** Dom4j 解析Xml文档及 XPath查询 学习笔记 **正文:** XML(eXtensible Markup Language)是一种标记语言,常用于数据交换、配置存储以及文档结构化表示。在Java世界中,解析XML文档有多种库,其中Dom4j是...

    XPath 2.0 程序员参考

    XPath 2.0 引入了一个更为丰富的类型系统,包括许多新的数据类型,如日期时间类型(`xs:date`, `xs:dateTime`)、持续时间类型(`xs:duration`)和其它各种原子类型。此外,XPath 2.0 还支持类型定义和用户自定义...

    XPath简明教程

    XSLT是一种用于转换XML文档的样式表语言,XPath被广泛应用于XSLT规则中,用于指定源文档中需要转换的部分。没有XPath的知识,很难编写出有效的XSLT文档。 #### 1.5 XPath是W3C标准 XPath于1999年11月16日成为W3C的...

    web端自动化基础xpath.docx

    - **持续集成/持续部署(CI/CD)**:自动化测试是CI/CD流程中的关键组成部分,有助于及时发现问题并快速反馈。 2. **自动化测试的方向**: - **趋势**:随着软件开发周期的加速,自动化测试已成为软件质量保证的...

    如何学习编程,很详细

    此外,持续学习是程序员职业生涯中永恒的主题。随着技术的不断发展,新的编程语言、框架和工具不断涌现,保持对新技术的关注和学习,是成为一名优秀程序员的关键。定期阅读技术博客、参与在线课程、加入开发者社区,...

    XPath Shell (XPsh)-开源

    XPsh的核心功能是利用XPath启发式语法来定位和操作文件,这种方式通常用于XML文档的查询,但在XPsh中,它被巧妙地应用于文件系统,使得对文件的操作更加灵活和精准。 XPath是一种在XML文档中查找信息的语言,通过...

    山西干部在线学习助手

    7. **持续更新与维护**:鉴于网站可能会更新其结构或接口,学习助手需要定期维护,以适应这些变化,保持功能的正常运行。 总的来说,“山西干部在线学习助手”是一个结合了C#编程、网页自动化和用户行为模拟技术的...

    如何学习java web

    学习Java Web开发是一个循序渐进的过程,涵盖了多个技术领域。以下是对标题和描述中所涉及的知识点的详细说明: 1. **Java基础**:Java语言是...持续学习和实践,参与实际项目,才能成长为一名优秀的Java Web开发者。

    API合集后续继续补充

    持续更新和学习API是IT专业人员不断提升自身技能的关键步骤,因为新技术和工具的出现会不断扩展API的边界。因此,"API合集后续继续补充"意味着我们需要时刻保持对最新技术的关注和学习,以适应快速发展的IT环境。

    python网络爬虫学习,都是在学习过程中照猫画虎做出来的,部分程序在原来的基础上修正了部分bug,优化了显示效果.zip

    10. **持续学习与实践**:网络爬虫技术不断更新,新的库和工具层出不穷。持续关注Python社区,了解最新的爬虫技术和最佳实践,不断实践和优化,是成为一名优秀爬虫工程师的必经之路。 这个压缩包中的"Kwan1117"可能...

    autotest自动化测试

    `京东持续集成的质量之道.pdf`可能探讨了京东在实施持续集成过程中积累的经验和最佳实践,强调了自动化测试在提升软件质量中的关键作用。 **学习资源** `Robot Framework学习笔记V1.0.pdf`、`robot_framewok自动化...

    学习Ajax需要.txt

    - JavaScript的学习是一个持续的过程,初学者至少需要投入12个月的时间来打下坚实的基础。 #### 三、核心技能详解 1. **理解Ajax的工作原理** - Ajax的核心思想是在不重新加载整个页面的情况下,通过后台与...

    firebug插件及各种浏览器

    在IT行业中,网页开发是一项至关重要的任务,而有效的工具能够极大地提升开发效率和问题排查能力。Firebug是一款曾经非常流行的JavaScript调试...在不断更新的技术环境中,持续学习和适应新工具是保持竞争力的关键。

    XML DOM4J学习笔记

    XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件以及文档存储等领域。DOM4J是Java中一个流行的XML处理库,它...通过持续学习和实践,可以熟练掌握DOM4J,提升XML处理能力。

    selenium2 的学习材料

    8. **持续集成**:学习如何将Selenium测试集成到持续集成工具如Jenkins、Travis CI中,实现自动化构建和测试。 9. **日志记录**:学会如何记录和分析测试日志,帮助诊断问题。 10. **模拟用户行为**:掌握如何模拟...

    Selenium资料搜集

    2. **XPath教程**:详细解释XPath的工作原理、语法和使用技巧,如何在Selenium中高效地运用XPath进行元素定位。 3. **实战案例**:实际的Selenium测试脚本和项目,演示如何编写和执行自动化测试,以及如何处理各种...

    使用Python爬取了“南京大学实验室安全教育与考试系统”的所有题目,并制作成题库,方便学习以及在考试中查阅,并且记.zip

    10. **持续集成与自动化**:如果系统需要定期更新题库,可能会采用自动化脚本,如定时任务(如Linux的cron job)或者持续集成服务(如Travis CI),确保题库的实时性。 通过这个项目,我们可以学习到Python爬虫的...

    htmlagilitypack-94773.zip

    "htmlagilitypack-94773.zip"包含了一个强大的HTML解析库的源代码,通过这个资源,开发者不仅可以学习到如何在C#中使用HTML Agility Pack处理HTML,还可以深入了解软件开发中的版本控制、构建流程和XPath查询技术。...

    Sparta -- Lean XML Parser, DOM, & XPath-开源

    XPath是XML数据检索和导航的重要工具,Sparta提供的XPath解释器允许开发者使用表达式来查找XML文档中的特定节点。XPath语言支持选取节点、属性、文本等内容,并可以根据节点的名称、位置或属性进行筛选。这为处理...

Global site tag (gtag.js) - Google Analytics