XPath 选取未知节点 & 选取若干路径

Posted coco1989

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XPath 选取未知节点 & 选取若干路径相关的知识,希望对你有一定的参考价值。

选取未知节点

通配符 描述
* 匹配任何元素节点,选择所有由星号之前的路径所定位的元素
@* 匹配任何属性节点
not(@*) 匹配没有任何属性的节点
node() 匹配任何类型的节点

 

选取若干路径

运算符 描述
| 选取若干个路径

 

桔色字体表示使用语法匹配的结果

语法:/html/body/div/p/*  选择所有路径依附于/html/body/div/p/的元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>       <p id="s1">         <title>20</title>         <span></span>       </p>       <p id="s2"></p>       <p></p>     <div>   </body> </html>
语法:/*/*/*/p  选择所有的有3个祖先元素的p元素,即在第四层的p元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2"></p>
      <p></p>
    <div>
  </body>
</html>
语法://*  选择所有元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2"></p>
      <p></p>
    <div>
  </body>
</html>
语法://title|//span  选择所有的tltle元素和span元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2">
        <title>20</title>
        <span></span>
          </p>
      <p></p>
    <div>
  </body>
</html>
语法:/html/body/div/p/title|/html/body/div/p/span  选择html下body下的div下的p的title元素和span元素
<html lang="en">
  <head>
  </head>
  <body>
    <div>
      <p id="s1">
        <title>20</title>
        <span></span>
      </p>
      <p id="s2">
        <title>20</title>
        <span></span>
          </p>
      <p></p>
    <div>
  </body>
</html>

 

以上是关于XPath 选取未知节点 & 选取若干路径的主要内容,如果未能解决你的问题,请参考以下文章

python中xpath解析网页html文档

selenium自动化测试之元素定位二(xpath定位)

Xpath语法&示例

Xpath

xpath路径的写法

XPath学习