首页 > 其他分享 >爬虫图片是 base64 编码

爬虫图片是 base64 编码

时间:2022-12-09 17:11:56浏览次数:42  
标签:编码 src image base64 爬虫 data

问题

爬虫抓取网页的时候,遇到有的图片是 base64 编码的格式,要怎样下载到本地呢?

示例:base64 编码的 img 标签

<!-- 内容太长省略一部分 -->
<img src="data:image/png;base64,/9j/4S/+RXhpZgAATU0AKgAAAAgAAAAAA...km7SSkpf/9k=">

解决方案

以上文为例,当我们解析到 src 属性后,可以做如下处理:

>>> import base64
>>> 
>>> # src 属性
>>> src
'data:image/png;base64,/9j/4S/+RXhpZgAATU0AKgAAAAgAAAAAA...km7SSkpf/9k='
>>>
>>> # 提取内容部分
>>> info, b64_data = src.split('base64,', 1)
>>> 
>>> # 提取文件格式
>>> fmt = info.split('image/')[-1].replace(';', '')
>>> 
>>> # 解码内容
>>> binary_data = base64.urlsafe_b64decode(b64_data)
>>>
>>> # 保存到文件
>>> with open('this_image_was_from_base64.' + fmt, 'wb') as f:
...		f.write(binary_data)

标签:编码,src,image,base64,爬虫,data
From: https://www.cnblogs.com/hyd666kkk/p/16969457.html

相关文章