data:image/png;base64有什么作用

data:image/png;base64有什么作用  

2013-03-27 09:35:57|  分类:html+css|  标签:data  image/png  base6  作用  |字号 订阅

    大家可能注意到了,网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如:background-image:url(data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAYAAABIdFAMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHhJREFUeNo8zjsOxCAMBFB/ KEAUFFR0Cbng3nQPw68ArZdAlOZppPFIBhH5EAB8b+Tlt9MYQ6i1BuqFaq1CKSVcxZ2Acs6406KUgpt5/ LCKuVgz5BDCSb13ZO99ZOdcZGvt4mJjzMVKqcha68iIePB86GAiOv8CDADlIUQBs7MD3wAAAABJRU5ErkJggg%3D%3D)。那么这是什么呢?这是 Data URI scheme
  Data URI scheme是在RFC2397中定义的, 目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入。比如上面那串字符,其实是一张小图片,将这些字符复制黏贴到火狐的地址栏中并转到,就能看到它了,一张1X36的白灰png图片。
  在上面的Data URI中,data表示取得数据的协定名称,image/png 是数据类型名称,base64 是数据的编码方法,逗号后面就是这个image/png文件base64编码后的数据。
  目前,Data URI scheme支持的类型有:
data:,文本数据
data:text/plain,文本数据
data:text/html,HTML代码
data:text/html;base64,base64编码的HTML代码
data:text/css,CSS代码
data:text/css;base64,base64编码的CSS代码
data:text/javascript,Javascript代码
data:text/javascript;base64,base64编码的Javascript代码
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
data:image/x-icon;base64,base64编码的icon图片数据
  base64简单地说, 它把一些 8-bit 数据翻译成标准 ASCII 字符,网上有很多免费的base64 编码和解码的工具,在PHP中可以用函数base64_encode() 进行编码,如echo base64_encode(file_get_contents(‘wg.png’));
目前,IE8、Firfox、Chrome、Opera浏览器都支持这种小文件嵌入。
举个图片的例子:
  网页中一张图片可以这样显示:

<img src=“http://www.letuknowit.com/images/wg.png”/>
也可以这样显示:

HTML语言: 知蚁博客 程序设计
<img src=“data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAYAAABIdFAMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHhJREFUeNo8zjsOxCAMBFB/KEAUFFR0Cbng3nQPw68ArZdAlOZppPFIBhH5EAB8b+Tlt9MYQ6i1BuqFaq1CKSVcxZ2Acs6406KUgpt5/LCKuVgz5BDCSb13ZO99ZOdcZGvt4mJjzMVKqcha68iIePB86GAiOv8CDADlIUQBs7MD3wAAAABJRU5ErkJggg%3D%3D”/>
  我们把图像文件的内容直接写在了HTML 文件中, 这样做的好处是,节省了一个HTTP 请求。坏处呢,就是浏览器不会缓存这种图像。大家可以根据实际情况进行自由取舍,O(∩_∩)O~。
       原创文章请注明转载于知蚁博客,本文地址:http://www.letuknowit.com/archives/76

 

在线base64解码编码:http://app.baidu.com/app/enter?appid=284732

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Python中爬取data:image/png;base64图片,你可以使用以下步骤: 1. 导入所需的库,包括requests、base64和PIL(Python Imaging Library)。 2. 使用requests库发送HTTP请求,获取包含base64编码图片数据的响应。 3. 从响应中提取出base64编码的图片数据。 4. 使用base64库解码图片数据。 5. 将解码后的图片数据转换为PIL图像对象。 6. 可选:对图像进行进一步处理或保存。 下面是一个示例代码,演示了如何在Python中爬取data:image/png;base64图片: ```python import requests import base64 from PIL import Image from io import BytesIO # 发送HTTP请求获取响应 response = requests.get("图片URL") # 提取base64编码图片数据 image_data = response.content.split(b";base64,")[1] # 解码图片数据 decoded_image_data = base64.b64decode(image_data) # 将解码后的图片数据转换为PIL图像对象 image = Image.open(BytesIO(decoded_image_data)) # 可选:对图像进行进一步处理或保存 image.show() ``` 请将"图片URL"替换为你需要爬取的data:image/png;base64图片的URL。这样,你就可以成功地在Python中爬取并处理data:image/png;base64图片了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [python爬取图片遇见src乱码: data:image/png;base64](https://blog.csdn.net/weixin_39834780/article/details/114445179)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值