图片转Base64

在Python中, 可以使用内置的base64模块以及图像处理库(如PIL, 也称为Pillow)来将图片转换为Base64编码的字符串.
以下是一个简单的示例, 说明如何实现这一过程:
首先, 需要安装Pillow库(如果尚未安装), 可以使用pip来安装: pip install pillow
然后, 可以使用以下Python代码将图片转换为Base64编码的字符串:
import base64  
from io import BytesIO  
from PIL import Image  
  
def image_to_base64(image_path, image_format="JPEG"):  
    """  
    将图片转换为Base64编码的字符串  
    :param image_path: 图片路径  
    :param image_format: 图片格式(如 "PNG", "JPEG" 等)  
    :return: Base64编码的字符串  
    """  
    with Image.open(image_path) as img:  
        buffered = BytesIO()  
        img.save(buffered, format=image_format.upper())  
        img_byte_arr = buffered.getvalue()  
      
    base64_str = base64.b64encode(img_byte_arr).decode('utf-8')  
    return base64_str  
  
# 使用示例  
image_path = 'path/to/your/image.jpg'  # 替换为你的图片路径  
base64_data = image_to_base64(image_path)  
print(base64_data)  # 输出Base64编码的字符串
在上面的代码中, image_to_base64函数接受两个参数: 图片路径和图片格式.
它首先使用Pillow库的Image.open方法打开图片, 然后将图片保存到一个字节缓冲区BytesIO中.
接下来, 它从缓冲区中获取字节数组, 并使用base64.b64encode函数进行Base64编码.
最后, 它将编码后的字节数组解码为UTF-8格式的字符串并返回.

请注意, 你需要将image_path变量替换为你实际要转换的图片的路径.
此外, 如果你想要以不同的格式(如PNG)保存图片, 只需更改image_format参数即可.
使用Base64编码作为网站图标.
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>web应用</title>

    <link rel="icon" type="image/x-icon"
          href="data:image/x-icon;base64, 
          /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgK
          DBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgN
          DRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAAQ
          ABADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
          AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RF
          RkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5
          usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAEC
          AwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
          YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaH
          iImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3
          +Pn6/9oADAMBAAIRAxEAPwD3GfWdNtmmWa/tkeFS0iGVdygdcjOaw9F1aa3vrhNWmnh+1OksEdwhxHvJwgbG
          BgbBjP3s+tV4LQy69BDNpsh8nUri5Mj252AFH2sGI29SuMHPPtWpete6tLZ2o065trcXKSzyTGPBVDvAG1iSSwTt0zQB/9k=">
</head>
<body>
</body>
</html>

image-20240613021614943

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值