图片转Base64

handlebars 复制代码
在Python中, 可以使用内置的base64模块以及图像处理库(如PIL, 也称为Pillow)来将图片转换为Base64编码的字符串.
以下是一个简单的示例, 说明如何实现这一过程:
handlebars 复制代码
首先, 需要安装Pillow库(如果尚未安装), 可以使用pip来安装: pip install pillow
handlebars 复制代码
然后, 可以使用以下Python代码将图片转换为Base64编码的字符串:
python 复制代码
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编码的字符串
handlebars 复制代码
在上面的代码中, image_to_base64函数接受两个参数: 图片路径和图片格式.
它首先使用Pillow库的Image.open方法打开图片, 然后将图片保存到一个字节缓冲区BytesIO中.
接下来, 它从缓冲区中获取字节数组, 并使用base64.b64encode函数进行Base64编码.
最后, 它将编码后的字节数组解码为UTF-8格式的字符串并返回.

请注意, 你需要将image_path变量替换为你实际要转换的图片的路径.
此外, 如果你想要以不同的格式(如PNG)保存图片, 只需更改image_format参数即可.
handlebars 复制代码
使用Base64编码作为网站图标.
html 复制代码
<!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>
相关推荐
天才测试猿1 分钟前
Selenium三大等待详解
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
梨轻巧30 分钟前
pyside6安装:下载python、配置环境变量、vscode安装和测试pyside6、可能遇到的错误、pycharm 安装pyside6
python
wu_jing_sheng042 分钟前
电商销售数据分析实战:从数据挖掘到业务增长
python
voice6701 小时前
西电现代密码学实验一
开发语言·python·密码学
FriendshipT1 小时前
图像生成:PyTorch从零开始实现一个简单的扩散模型
人工智能·pytorch·python
初学小白...1 小时前
反射概述and获得反射对象
开发语言·python
后藤十八里1 小时前
2025python学习笔记Part2
开发语言·python
寒秋丶1 小时前
Milvus:向量字段-二进制向量、稀疏向量与密集向量(六)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
材料科学研究2 小时前
深度学习PINN!从入门到精通!
python·深度学习·神经网络·pinn
我想进大厂2 小时前
Python---数据容器(Set 集合)
开发语言·python