网页结构的简介和Xpath语法的入门教程

简介: 相信很多小伙伴已经听说过Xpath,之前小编也写过一篇关于Xpath的文章,感兴趣的小伙伴可以戳这篇文章如何利用Xpath抓取京东网商品信息以及Python网络爬虫四大选择器(正则表达式、BS4、Xpath、CSS)总结。

相信很多小伙伴已经听说过Xpath,之前小编也写过一篇关于Xpath的文章,感兴趣的小伙伴可以戳这篇文章如何利用Xpath抓取京东网商品信息以及Python网络爬虫四大选择器(正则表达式、BS4、Xpath、CSS)总结。今天小编继续给大家介绍一些Xpath知识点,希望对大家的学习有帮助。

1、Xpath让我们可以使用一种类似于Windows下的文件路径的方式,让我们可以定位到HTML或者XML结构中的具体元素。Xpath本身包含标一些准函数库,可以让我们的Xpath语法更加强大。



2、在HTML结构中,有一定的层级关系,主要的关系包括:父节点、子节点、同胞节点(兄弟节点)、先辈节点、后代节点。



一般的,像类似于这种结构,称之为一个节点。如上图,根据层次关系,我们可以知道节点是的父节点,相应的,节点是节点的子节点。同胞节点又叫兄弟节点,一般的处于同级层次的节点叫同胞节点,如上图中的节点和第一个

节点、177~181行的

标签都是属于同胞节点。先辈节点又叫祖先节点,一般的,一个节点的上层以上的节点均称为先辈节点,所以父节点也是属于先辈节点的一种。基于此,我们又可以称节点是的先辈节点。相对应的,一个节点的下层以下的节点均称为后代节点,所以子节点也是属于后代节点的一种。基于此,我们又可以称节点是节点的后代节点。

3、理解这些节点之间的关系之后,可以方便我们更好的理解Xpath语法,下表是部分常用的Xpath语法。



这里特别强调“/”和“//”的区别,“/”一般代表的某个元素的子节点,而不是全部的后代节点;而“//”一般代表的某个元素的后代节点,范围比“/”代表的要更加广泛一些。@符号后边时常跟着class,代表选取名为class属性的节点,比较常见。

4、下面针对具体的网页源码,让大家了解一下网页结构。



如上图中的红色框框中,class为属性,而等于号后边的“grid-5”即为属性值,有的时候节点内不只是一个属性,如上图中的196行中,就有两个属性。

5、为了更加方便的定位到div或者其他节点下的标签,我们需要继续进一步的进行定位锁定,下表是部分常用的Xpath语法。



掌握了Xpath语法知识之后,我们就可以通过Xpath语法来进行编写Xpath表达式,以提取网页上的目标数据。



千里之行,始于足下。如果想学好Xpath,更是需要勤加使用,下一篇文章将给大家介绍Xpath在Scrapy爬虫项目中的使用。

相关文章
|
移动开发 前端开发 JavaScript
【HTML】HTML基础知识详解【2万字+代码实例+显示效果】(下)
【HTML】HTML基础知识详解【2万字+代码实例+显示效果】(下)
【HTML】HTML基础知识详解【2万字+代码实例+显示效果】(下)
|
5月前
|
JavaScript 前端开发 数据安全/隐私保护
HTML基础知识详解(下)(如果想知道html的全部基础知识点,那么只看这一篇就足够了!)
HTML基础知识详解(下)(如果想知道html的全部基础知识点,那么只看这一篇就足够了!)
|
3月前
|
Web App开发 移动开发 前端开发
|
5月前
|
前端开发 容器
HTML基础知识详解(上)(如果想知道html的全部基础知识点,那么只看这一篇就足够了!)
HTML基础知识详解(上)(如果想知道html的全部基础知识点,那么只看这一篇就足够了!)
|
6月前
|
移动开发 前端开发 HTML5
【专栏:HTML 基础篇】HTML 入门:从零开始构建你的第一个网页
【4月更文挑战第30天】本文引导初学者从零开始学习HTML,了解这种标记语言用于构建网页的基础知识。通过介绍HTML的基本结构,如文档类型声明、根标签、头部和主体,以及如何添加文本、设置标题、插入图片、创建链接、使用列表、制作表格和设计表单,帮助读者构建第一个网页。同时强调,结合CSS可实现网页的美化。
105 0
|
6月前
|
运维 前端开发 JavaScript
【专栏:HTML进阶篇】HTML与Web标准:构建可访问与可维护的网页
【4月更文挑战第30天】本文探讨了HTML与Web标准的关系,强调遵循标准对创建高质量、可访问、可维护网页的重要性。通过使用语义化标签、提供文本替代、合理使用表格和列表,可提升网页可访问性;通过结构化文档、添加注释、分离结构与表现,能增强网页可维护性。遵循Web标准,可确保网页在不同设备上的兼容性,并满足各类用户需求。
61 0
|
6月前
|
前端开发 搜索推荐 UED
《HTML 简易速速上手小册》第6章:HTML 语义与结构(2024 最新版)
《HTML 简易速速上手小册》第6章:HTML 语义与结构(2024 最新版)
44 0
|
6月前
|
前端开发
《HTML 简易速速上手小册》第3章:HTML 的列表与表格(2024 最新版)
《HTML 简易速速上手小册》第3章:HTML 的列表与表格(2024 最新版)
36 0
|
11月前
HTML的基本知识(七)——表单的基本知识及案例
HTML的基本知识(七)——表单的基本知识及案例
|
Web App开发 移动开发 前端开发
【HTML】HTML基础知识详解【2万字+代码实例+显示效果】(上)
【HTML】HTML基础知识详解【2万字+代码实例+显示效果】