wtujcf123 发表于 2023-4-11 10:35

如果利用xpath 提出类似这样的网页内容。

<ul id="list">
    <li class="weight">1</li>
    <li>
      <span>测试11</span>
    </li>
    <li>
      <span>测试12</span>
    </li>
    <li class="weight">2</li>
    <li>
      <span>测试2</span>
    </li>
    <li class="weight">3</li>
    <li>
      <span>测试31</span>
    </li>
    <li>
      <span>测试32</span>
    </li>
    <li>
      <span>测试33</span>
    </li>
</ul>



各位老师好,我想利用xpath提取类似各同级节点下的内容,使之形成以下的内容。
[["1"],["测试11","测试12"]]
[["2"],["测试2"]]
[["3"],["测试31","测试32","测试33"]]
谢谢!

qq632280928 发表于 2023-4-11 10:40

//li[@class="weight"]/following-sibling::li/span

wtujcf123 发表于 2023-4-11 10:48

qq632280928 发表于 2023-4-11 10:40
//li[@class="weight"]/following-sibling::li/span

谢谢了,这个好像只能一次性取出所有的span节点下的内容,但无法进行分类呢

qq632280928 发表于 2023-4-11 11:30

qq632280928 发表于 2023-4-11 10:40
//li[@class="weight"]/following-sibling::li/span

//li[@class="weight"]/following-sibling::li/span/../preceding-sibling::li[@class="weight"]在设置一个字段

wtujcf123 发表于 2023-4-11 12:07

qq632280928 发表于 2023-4-11 11:30
//li[@class="weight"]/following-sibling::li/span/../preceding-sibling::li[@class="weight"]在设置 ...

你好,老师,能用python写一下吗?

woflant 发表于 2023-4-11 12:53

chrome浏览器有个插件xpath helper,可以在浏览器页面写入xpath,适合学习xpath语法

wtujcf123 发表于 2023-4-11 13:00

woflant 发表于 2023-4-11 12:53
chrome浏览器有个插件xpath helper,可以在浏览器页面写入xpath,适合学习xpath语法

ok,谢谢了:lol:lol:lol

liuhaigang12 发表于 2023-4-11 13:53

先取所有li标签构成一个列表,然后循环这个列表

wtujcf123 发表于 2023-4-11 13:56

liuhaigang12 发表于 2023-4-11 13:53
先取所有li标签构成一个列表,然后循环这个列表

这个要怎么循环呢,我最开始也是这么想的,但不会构造循环。

liuhaigang12 发表于 2023-4-11 14:03

wtujcf123 发表于 2023-4-11 13:56
这个要怎么循环呢,我最开始也是这么想的,但不会构造循环。

//li[@class="weight"].getall()------拿到列表    然后循环
页: [1] 2 3
查看完整版本: 如果利用xpath 提出类似这样的网页内容。