xpath

什么是xml?

  1. 定义: 可扩展标记性语言(EXtensible Markup Language)
  2. 特定: xml是具有自描述特性的半结构化数据。
  3. 作用: xml主要用来传输数据

xml和html的区别

  1. 语法要求不同: xml的语法要求更严格
    1. 在html中不区分大小写,在xml中严格区分

    2. 在html中,有时不严格,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略

      或者
    3. 标记。在xml中,是严格的树状结构,绝对不能省略任何标记
      1. 在xml中,拥有单个标记二没有匹配的结束标记的元素必须用一个/字符作为结尾
      2. 在xml中,属性值必须分装在引号中。在html中,引号可用可不用
      3. 在html中属性名可以不带属性值,xml必须带
      4. xml文档中,空白部分不会被解析器自动删除,但是html是过滤掉空格的
  2. 标记不同
    1. html使用固有的标记,xml没有固有标记
    2. html标签是预定义的,xml标签是自定义的、可扩展的
  3. 作用不同
    1. html是用来显示数据
    2. xml使用来传输数据的

xpath: 路径表达式

  1. xpath: 是用来筛选html或者xml中元素语法

  2. xml和html中一些名词

  3. 选取节点
    表达式描述
    nodename选取此节点的所有子节点
    /从根节点选取(绝对路径)
    //从任意节点选取(相对路径)
    .选取当前节点
    . .选取当前节点的父节点
    @选取属性
  4. 谓语
    路径表达式结果
    //book[1]第一个 book 元素
    //book[last()]最后一个 book 元素
    //book[last()-1]倒数第二个 book 元素
    //book[position()>1]不要第一个 book 元素
    /a[@href]根下有href属性的a元素
    /a[@title=“title”]根下title="title"的a元素
    /book[price>2]//a根下book的price属性>2的所有a元素
  5. 选取多个路径

    “|” : 表示"和"

    ​ 例: “/a | //input” : 选取根下的a元素和所有的input元素

6.其他选择方法
//*[@id="list_head"or@id=“list1”]
选择任意标签中id="list_head"或@id="list1"的标签

//table//tr/td[position() mod 2=1 and position() > 1] 选择单数td标签但不选择第一个td
参考:https://www.it1352.com/652847.html
//table//tr/td[position() mod 2=0] 选择双数td标签

xpath 选择class中包含a的数据
https://www.cnblogs.com/udskiblog/p/9431499.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值