Python 二维码库

使用 Python 生成二维码

Python 提供了强大的二维码库,如 qrcode 和 segno,适用于脚本、自动化和数据管道。在本地生成二维码或使用 QRCode.fun API 获取高级样式。

安装

使用 pip 安装 Python 二维码库。

pip
pip install qrcode[pil]
pip (segno)
pip install segno

使用 Python 库生成二维码

使用流行的 Python 二维码库的代码示例。

Basic QR Code with qrcode
import qrcode

# Simple generation
img = qrcode.make('https://qrcode.fun')
img.save('qrcode.png')

# Advanced with customization
qr = qrcode.QRCode(
    version=1,
    error_correction=qrcode.constants.ERROR_CORRECT_H,
    box_size=10,
    border=4,
)
qr.add_data('https://qrcode.fun')
qr.make(fit=True)

img = qr.make_image(fill_color='#1A2B3C', back_color='white')
img.save('qrcode_custom.png')
SVG Output with segno
import segno

qr = segno.make('https://qrcode.fun')
qr.save('qrcode.svg', scale=10)
qr.save('qrcode.png', scale=10, dark='#1A2B3C')
QR Code with Logo
import qrcode
from PIL import Image

qr = qrcode.QRCode(error_correction=qrcode.constants.ERROR_CORRECT_H)
qr.add_data('https://qrcode.fun')
qr.make(fit=True)

img = qr.make_image(fill_color='#1A2B3C', back_color='white').convert('RGB')

# Add logo
logo = Image.open('logo.png')
logo_size = img.size[0] // 4
logo = logo.resize((logo_size, logo_size))

pos = ((img.size[0] - logo_size) // 2, (img.size[1] - logo_size) // 2)
img.paste(logo, pos)
img.save('qrcode_logo.png')
QRCode.fun API

通过 API 在 Python 中生成二维码

从 Python 调用 QRCode.fun API,生成带有自定义颜色、形状和徽标的样式化二维码。

Python API 集成
import requests

response = requests.post('https://qrcode.fun/api/generate-qr-styled', json={
    'data': 'https://qrcode.fun',
    'width': 300,
    'height': 300,
    'type': 'png',
    'margin': 10,
    'dotsOptions': {
        'color': '#1A2B3C',
        'type': 'rounded'
    },
    'cornersSquareOptions': {
        'color': '#8564C3',
        'type': 'extra-rounded'
    },
    'backgroundOptions': {
        'color': '#FFFFFF'
    }
})

result = response.json()
# result['data'] contains the base64 PNG data URL
print(result['data'][:50])

实时二维码预览

立即尝试使用 Python 生成二维码。

二维码预览

原生库 vs API

比较直接使用 Python 二维码库与 QRCode.fun API。

功能原生库QRCode.fun API
设置复杂度pip install + Pillow 用于图像通过 requests 发送单次 HTTP 请求
自定义颜色、纠错等级、方块大小完整样式:颜色、形状、徽标
离线支持需要互联网
维护手动更新包始终保持最新
输出格式PNG, SVG, EPS, 终端PNG, SVG

Python 二维码使用场景

Python 开发者生成二维码的常见场景。

数据科学与报告

在自动化报告、Jupyter notebook 和数据可视化中嵌入二维码,链接到仪表盘或数据集。

Web 应用(Django/Flask)

在 Django 或 Flask 应用中服务端生成二维码,用于用户资料、票据和身份验证令牌。

自动化脚本

在批处理脚本中创建二维码,用于库存标签、资产追踪和文档管理。

IoT 与 Raspberry Pi

在嵌入式设备上生成二维码,用于 Wi-Fi 设置、设备配对和配置共享。

常见问题

关于使用 Python 生成二维码的常见问题。

qrcode 库是最流行的选择——它简单、维护良好,并支持 Pillow 进行图像输出。segno 是一个很好的替代方案,提供 SVG 输出和更紧凑的代码。

开始使用 Python 生成二维码

使用我们的免费在线生成器,或将 API 集成到您的 Python 脚本、Django 应用或数据管道中。