Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记

一、什么是信息的标记

当有一组信息时,为了使信息更利于阅读,方便理解,更加整洁,我们需要对信息进行标记。信息的标记其实也可以理解为是信息的分类过程。由此可以产生很多的好处:

  • 标记后的信息可形成信息组织结构、增加了信息维度。
  • 标记后的信息可用于通信、存储、或展示。
  • 标记后的结构与信息一样具有价值。
  • 标记后的信息更利于程序的理解和运用。

主要的信息标记的种类有三种形式,分别是:XML、JSON、YAML

 

一、XML

这种标记语言与HTML非常相似,都是通过标签来表达信息,XML的这种信息表达形式是基于HTML发展而来的一种通用信息表达形式。

XML通过标签形式来表达所有的信息:

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第1张图片

当标签中有信息表达的时候用第一种形式,当标签中没有信息表达时用第二种形式,添加注释时用第三种形式。

 

二、JSON

有类型键值对的信息表达方式。

1、有类型说明当要表达的信息时字符串时,需要给字符串信息加上双引号。

2、当一个键对应多个值时,我们采用下面的形式进行组织:

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第2张图片

3、此外,键值对可以嵌套使用,采用下面的形式进行组织:

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第3张图片

JSON的这种信息表达形式使得很多语言的应用程序可以直接引用JSON类型的文件,所以成为一种通用的信息表达形式。

 

三、YAML

无类型键值对的信息表达形式。

1、无类型说明无论信息时什么类型都不需要打双引号。

2、YAML通过缩进的形式表达所属关系

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第4张图片

 

3、YAML用减号表达并列关系

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第5张图片

 

4、YAML用竖线表达整块数据

当要表达的信息很多,需要跨越很多行,可以用竖线进行一个标记。

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第6张图片

此外还可以用#开头添加信息注释。

 

世界上的所有信息都可以通过上面的形式组织标记,从而可以发挥更大的价值。

 

四、三种形式的区别

1、XML实例

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第7张图片

最早的信息标记形式,扩展性好,但繁琐。

 

2、JSON实例

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第8张图片

信息有类型,适合程序处理,比XML简洁。

 

3、YAML实例

Python网络爬虫入门版笔记 七、XML、JSON、YAML三种信息的标记_第9张图片

信息无类型,文本信息比例最高,可读性好。

 

4、三种形式的主要使用场所

XML:Internet上的信息交互与传递(HTML是XML的一部分)

 

JSON:移动应用云端和节点的信息通信,无注释。(用在程序对接口处理的部分,JSON数据在经过传输过后能作为程序代码的一部分被程序直接运行,但是没有注释形式)

 

YAML:主要用于各类系统的配置文件,既有利于人类可读,又适合程序解析,信息的利用性较高。

你可能感兴趣的:(Python网络爬虫——入门篇)