ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Xpath学习笔记

2022-03-20 21:30:05  阅读:147  来源: 互联网

标签:Xpath 标签 笔记 选取 学习 html 当前 节点


Xpath全称XML Path Language:XML路径语言,是一门在XML文档中查找信息的语言,同样适用HTML文档.

.代表当前节点
..代表上一级节点
/表示子级,仅一层关系
//表示子(孙)级,可以是多层关系
@选取属性
通配符
*匹配任何元素节点
@*匹配任何属性节点
node()匹配任何类型的节点

使用前需将HTML内容转化:使用etree.HTML(内容)

以html=etree.HTML(内容)为例.

参数html开始的节点是<html>.

获取标签例:html.Xpath('/html')

父级获取子级标签例:html.Xpath('/html/body')

子级获取父级标签例:html.Xpath('/html/body/..')

通过ID检索例:html.Xpath('.//div[@id="ID名"]')(ID前加@和[])

通过class检索例:html.Xpath('.//div[@class="class名"]')(class前加@和[])

通过position定位(position返回当前标签的位置号)例:html.Xpath(".//table/tr[position()>0]"(取tr标签下除了第一个标签的后面全部)

通过last()去父级标签的最后一个子级标签例:html.Xpath(".//table/tr[last()]")

通过text()获取标签文本值例:html.Xpath('./html/head/title/text()')

轴:可定义相对于当前节点的节点集使用时加上"::"(两个冒号)
ancdstor选取当前节点的所有先辈
ancestor or self选取当前节点的所有先辈以及当前节点本身
attribute选取当前节点的所有所有属性
child选取当前节点的所有子元素
descendant选取当前节点的所有后代元素
descendant or self选取当前节点的所有后代元素以及当前节点本身
following选取文档中当前节点的结束标签之后的所有节点
namespace选取当前节点的所有命名空间节点
parent选取当前节点的父节点
preceding选取文档中当前节点的开始标签之前的所有节点
preceding-sibling

选取当前节点之前的所有同级节点

self选取当前节点

轴使用例:html.Xpath(".//table/ancestor::*")

标签:Xpath,标签,笔记,选取,学习,html,当前,节点
来源: https://blog.csdn.net/m0_63235356/article/details/123603315

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有