核心用法
qrcode2 是一款基于 Python 的本地二维码处理 Skill,提供完整的编解码能力:
- 生成二维码:将文本、URL 或任意数据编码为 PNG 格式二维码图片,支持自定义版本、容错级别(L/M/Q/H)、模块大小、边框宽度及配色方案
- 识别二维码:从本地图片文件中解析二维码内容,返回原始文本及定位点坐标
- 混合工作流:可与远程版
jisu-qrcode搭配使用,本地做测试解码,云端生成带模板/LOGO 的精美二维码
显著优点
1. 完全离线:不依赖外部 HTTP 接口,数据不出本地,隐私可控
2. 参数丰富:支持 9 项精细配置,满足从极简到高容错的各种场景
3. 双库保障:qrcode[pil] 生成稳定可靠,opencv-python 识别准确高效
4. 错误友好:依赖缺失、文件不存在、解码失败等场景均有结构化错误返回
潜在局限
- 无图形界面:纯命令行交互,需配合其他工具展示图片
- 生成样式单一:不支持内置 LOGO、渐变色彩或艺术化模板(需搭配远程版弥补)
- 依赖手动管理:无
requirements.txt,需用户自行安装 Python 依赖 - 仅支持标准二维码:不含 Micro QR、Aztec 等变体格式
适合人群
- 开发者/运维:快速生成 API 调试链接、内网服务入口二维码
- 营销人员:制作活动页、落地页扫码入口,配合远程版输出精美素材
- 隐私敏感用户:拒绝第三方云服务,数据完全本地化处理
- 自动化工作流:CI/CD 流程中批量生成带参二维码
常规风险
| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 路径遍历 | `out` 参数未严格校验,可能写入任意路径 | 在调用层做路径白名单控制 |
| 依赖冲突 | `opencv-python` 与系统 OpenCV 版本可能冲突 | 使用虚拟环境隔离 |
| 解码失败 | 图片模糊、遮挡、形变时识别率下降 | 提供容错提示,建议用户重新生成 |
| 色彩误配 | 自定义颜色对比度不足导致无法识别 | 推荐保持默认黑白配色 |