python网络爬虫(第五章:数据解析)

聚焦爬虫:爬取页面中指定的页面内容
编码流程:

1.指定url
2.发送请求
3.获取响应数据
4.数据解析
5.持久化存储

数据解析原理概述:解析的局部的文本内容都会在标签之间或者标签对应的属性中进行存储。
数据解析步骤:

1.进行指定标签的定位
2.标签或者标签对应的属性中存储的数据值进行提取(解析)
案例:网页解析

#糗图百科之实战案例
import requests

if __name__ == "__main__":
    url = 'https://pic.qiushibaike.com/system/pictures/12457/124575425/medium/YXD370U1DH5C2M3S.jpg'
    # content:返回二进制形式的图片数据
    #返回的数据类型:1.text【字符串】2.content【二进制】图片为二进制 3.json() 【返回json对象】
    response = requests.get(url=url).content
    with open('./retu.jpg','wb') as fp:
        fp.write(response)

    print('抓取成功!!!')

1.页面数据和结构

1.1 网页数据格式

1.结构化:具有模式的数据,如数据库、XML和JSON等
2.半结构化:半结构化数据具有一定的结构性,常见的半结构数据有XML和JSON。
3.非结构化:数据结构不规则或不完整,没有预定义的数据模型,如所有格式的办公文档、文本、HTML、图像、声音、视频等。

1.2 网页结构

网页结构均通过右击页面,选择【检查】,查看页面源代码

2.数据解析技术

数据解析分类:

1.正则
2.bs4【Beautiful Soup】
3.xpath(***)
描述类型
针对文本的解析正则表达式
针对HTML/XML的解析Xpath、正则表达式、bs4
针对JSON的解析JSONPath

(1)正则表达式给予文本的特征来匹配或查找指定的数据,可以处理任何格式的字符串文档。
(2)XPath和bs4基于HTML/XML文档的层次结构来确定到达指定节点的路径,更适合处理层级比较明显的数据。
(3)JSONPath专门用于JSON文档的数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值