文章目录
Python爬虫(六)——信息组织和提取
信息的标记
对一组相关的信息进行标记有以下优点:
- 可形成信息组织结构,增加了信息维度
- 可用于信息、存储或展示
- 标记的结构与信息一样具有重要价值
- 更利于程序理解和运用
信息标记的种类
XML
eXtensible Markup Language,是基于HTML发展而来的一种通用的信息表达格式。用尖括号和标签表达信息的标记形式。最早的通用信息标记语言,可拓展性好,但繁琐。通常在Internet上交互和传递。
实例:
<school>
<name>BUPT</name>
<address>
<city>北京市</city>
<street>北京市西土城路10号</street>
<zipcode>100876</zipcode>
</address>
</school>
JSON
JavaScript Object Notation,它由有类型的键值对组成。对于JavaScript等语言来说处理JSON格式很方便。信息有类型,适合程序处理(js),较XML简洁。移动应用云端和节点的通信,一般应用于程序在接口的地方,但无注释。
实例:
{
"name": "BUPT",
"address": {
"city": "北京市",
"street": "北京市西土城路10号",
"zipcode": 100876
}
}
YAML
YAML Ain’t Markup Language,它由无类型的键值对组成,它利用缩进来表示所属,用减号表示并列关系。信息无类型,文本信息比例最高,可读性好。应用于各类系统的配置文件中。
实例:
"name": "BUPT",
"address":
"city": "北京市",
"street": "北京市西土城路10号",
"zipcode": "100876"
信息提取的一般方法
方法一
使用标记解析器完整解析信息的标记形式,再提取关键信息。
优点:
信息解析准确
缺点:
提取过程繁琐,速度慢
方法二
无视标记形式,使用文本查找函数直接搜索关键信息。
优点:
提取过程简洁,速度较快