核心功能与用法
qr-gen 是一个本地运行的二维码生成工具,通过 Python 脚本 generate_qr.py 提供命令行接口。用户可将任意文本、URL、WiFi 网络凭证或 vCard 联系人信息编码为标准二维码图像,支持 PNG 位图、SVG 矢量图及终端 ASCII 艺术三种输出格式。
典型使用场景包括:
- 链接分享:快速生成可扫描的网址二维码
- WiFi 免密连接:创建包含 SSID 和密码的扫码联网码(iOS/Android 相机原生支持)
- 电子名片:将 vCard 格式联系人信息编码为二维码,便于商务交换
- 终端调试:使用 ASCII 模式在命令行预览二维码效果
显著优点
1. 零依赖负担:脚本自动检测并安装 qrcode[pil] 库,无需预配置 Python 环境
2. 格式灵活:PNG 适用于通用分享,SVG 满足印刷/网页缩放需求,ASCII 便于无图形环境调试
3. 纠错可调:四级纠错级别(L/M/Q/H),H 级可容忍 30% 区域损坏,适合叠加 Logo 或粗糙打印环境
4. 隐私优先:本地生成,数据不经过任何第三方服务
局限与风险
| 维度 | 说明 |
|------|------|
| **功能边界** | 仅支持生成,无扫码解码能力;无批量生成接口 |
| **WiFi 安全** | 生成的 WiFi 二维码包含明文密码,截图/打印后需物理介质安全管理 |
| **vCard 复杂度** | 需手动拼接 vCard 字符串,无结构化参数支持(如照片字段) |
| **长期维护** | 依赖 Python 生态,若 Pillow 或 qrcode 库出现安全更新需手动跟进 |
适合人群
- 开发者与 DevOps:需要程序化生成二维码集成到工作流
- 小型商户/个人用户:快速制作 WiFi 登录码、名片码,无需订阅 SaaS 服务
- 隐私敏感场景:拒绝将数据提交至在线二维码生成网站
常规风险提示
- 生成的二维码图像若包含敏感信息(如密码、内部链接),请控制传播范围
- 使用
--error-correction H并叠加 Logo 时,务必实测扫描成功率 - ASCII 模式依赖终端字体,部分环境可能出现扫描困难