学习笔记——信息标记与信息提取方法简介

一、信息标记的意义

  1. 形成信息组织结构,增加信息维度;
  2. 标记的结构与信息一样具有重要价值
  3. 标记后的信息可用于通信、存储或展示
  4. 标记后的信息更利于程序理解和运用

二、信息标记的三种形式

1. XML格式

XML:eXtensible Markup Language,可扩展的标记语言。
主要的格式如下:

<name>...</name> # 常见的格式
<name /> # 空元素缩写形式
<!-- --> # 注释书写形式

在这里插入图片描述
实例如下:

<man>
    <firstName>Yun</firstNmae>
    <lastName>Ma</lastName>
    <address>
            <strrtAddr>余杭区文一西路969号</streetAddr>
            <city>杭州市</city>
            <zipcode>311121</zipcode>
    </address>
    <title>Teacher</title><title>Businessman</title>
</man>

2. JSON格式

JSON:JavsScript Object Notation.
主要格式如下:

"key":"value"
"key":["value1","value2"]
"key":{"subke":"value"}

可见JSON格式没有添加注释的选项,有点类似于构造字典。
实例如下:

{
    "firstName":"Yun",
    "lastName":"Ma",
    "address":{
            "strrtAddr":"余杭区文一西路969号",
            "city":"杭州市",
            "zipcode":"311121"
                        },
    "title":["Teacher","Businessman"]
}

3. YAML格式

YAML:YAML Ain’t Markup Language。
主要格式如下:

key:value
key:#comment # 用"#"表示注释
-value1 # 用"-"表示并列关系
-value2
key:
    subkey:subvalue # 用缩进表示所属关系

YAML跟Python一样,用缩进表示所属关系,用"-“表示并列关系,用”#"表示注释,用“|”表达整块数据。
实例如下:

firstName:Yun
lastName:Ma
address:
    strrtAddr:余杭区文一西路969号
    city:杭州市
    zipcode:311121
 title:
-Teacher
-Businessman

4.XML/JSON/YAML三种信息标记的比较

XML:最早的通用信息标记语言,可扩展性好,但繁琐,应用在Internet上的信息交互与传递。
JSON:信息有类型,适合程序处理(js),较XML简洁,应用在移动应用云端和节点的信息通信,无注释。
YAML:信息无类型,文本信息比例最高,可读性好,应用在各类系统的配置文件,有注释易读。

三、信息提取的方法

1. 完整解析信息的标记形式,再提取关键信息

XML JSON YAML
需要标记解析器,例如:bs4库的标签树遍历
优点:信息解析准确
缺点:提取过程繁琐,速度慢

2. 搜索的方法——无视标记形式,直接搜索关键信息

对信息的文本查找函数即可
优点:提取过程简洁,速度较快
缺点:提取结果准确性与信息内容相关

3. 融合方法:结合形式解析与搜索方法,提取关键信息

XML JSON YAML 搜索
需要标记解析器及文本查找函数

四、参考资料

北京理工大学嵩天老师的《Python网络爬虫与信息提取》

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值