核心用法
qrcode2 是一款基于 Python 的本地二维码处理 Skill,提供完整的二维码生成与识别能力。该工具通过 qrcode[pil] 库实现 PNG 格式二维码图片的生成,利用 opencv-python 完成图片中的二维码解码,全程不依赖外部 HTTP 接口,适合离线环境或数据敏感场景使用。
生成二维码(encode):支持文本、URL 等任意字符串编码为二维码图片,可自定义版本、容错级别、模块尺寸、边框宽度及前后景色。默认输出 PNG 格式,路径可自定义,满足从简单扫码到高容错印刷的各种需求。
识别二维码(decode):从本地图片文件中解析二维码内容,返回解码文本及二维码四角坐标,支持 JPEG、PNG 等常见格式,适用于验证生成结果或批量处理历史二维码图片。
显著优点
1. 完全本地执行:无需联网,不依赖第三方 API,避免网络延迟和服务可用性风险,适合内网环境或隐私敏感场景。
2. 参数高度可定制:支持 4 级容错(L/M/Q/H)、40 种版本规格、颜色自定义,可生成从网页扫码到工业印刷级别的二维码。
3. 双端协同能力:可与远程版 jisu-qrcode Skill 搭配,本地做快速原型验证和沙箱测试,云端负责模板化、LOGO 叠加等增值功能。
4. 错误反馈清晰:对依赖缺失、文件不存在、解码失败等场景返回结构化错误信息,便于上游代理做异常处理和用户提示。
潜在缺点与局限性
1. 依赖手动安装:不提供 requirements.txt,需用户手动安装 qrcode[pil] 和 opencv-python,环境准备成本较高。
2. 功能基础:不支持直接生成带 LOGO、艺术模板、渐变色的二维码,需借助外部工具或远程服务实现。
3. 解码鲁棒性有限:OpenCV 的二维码识别对模糊、遮挡、透视变形严重的图片识别率下降,复杂场景下建议结合专业解码库。
4. 无图片上传能力:仅支持本地文件路径输入/输出,如需网络分享需额外处理文件上传步骤。
适合人群
- 需要在离线或沙箱环境快速生成/验证二维码的开发者
- 构建营销落地页、活动系统的全栈工程师
- 对数据隐私有要求、希望避免第三方 API 的企业用户
- 使用 OpenClaw/ClawHub 等本地优先平台的自动化工作流搭建者
常规风险
- 依赖版本冲突:
opencv-python与系统级 OpenCV 库可能存在冲突,建议使用虚拟环境隔离。 - 路径安全问题:输出路径由调用方控制,若代理未做校验,可能存在路径遍历风险(如
../../../etc/passwd)。 - 解码信息不可信:二维码内容可能包含恶意 URL,识别后应做白名单校验再跳转或展示。