# mini-program-qr **Repository Path**: kroyo/mini-program-qr ## Basic Information - **Project Name**: mini-program-qr - **Description**: 用python语言写的生成小程序二维码的小工具 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-08 - **Last Updated**: 2026-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 微信小程序二维码生成工具 用于批量生成微信小程序页面二维码的命令行工具。 ## 功能特性 - 生成指定页面的二维码 - 生成无限码(带自定义参数) - 批量生成二维码 - 支持自定义二维码样式和环境版本 ## 环境要求 - Python 3.10+ - [mise](https://mise.jdx.dev/)(可选,用于管理 Python 版本和虚拟环境) ## 快速开始 ### 方式一:使用 mise(推荐) ```bash # 1. 安装 mise(如果未安装) curl https://mise.run | sh # 2. 安装 Python 和依赖 mise install mise run install # 3. 复制并配置环境变量 cp .env.example .env # 编辑 .env 文件,填入你的微信小程序配置 # 4. 运行程序 mise run dev ``` ### 方式二:手动安装 ```bash # 1. 创建虚拟环境 python -m venv .venv source .venv/bin/activate # macOS/Linux # 2. 安装依赖 pip install -r requirements.txt # 3. 复制并配置环境变量 cp .env.example .env # 编辑 .env 文件,填入你的微信小程序配置 # 4. 运行程序 python main.py ``` ## 配置说明 在项目根目录创建 `.env` 文件,填入以下配置: ```env WECHAT_APP_ID=你的小程序AppID WECHAT_APP_SECRET=你的小程序AppSecret ``` **获取方式**:登录 [微信公众平台](https://mp.weixin.qq.com/) → 开发管理 → 开发设置 ## 使用方法 运行程序后,根据提示选择功能: ``` ================================================== 微信小程序二维码生成工具 ================================================== 请选择功能: 1. 生成指定页面的二维码 2. 生成无限码(带自定义参数) 3. 批量生成二维码 0. 退出 ``` ### 1. 生成指定页面二维码 输入页面路径(如 `pages/index/index`)和可选的场景值。 ### 2. 生成无限码 输入场景值(必填,最大32字符)和页面路径。 ### 3. 批量生成二维码 创建 `batch_config.txt` 文件,每行格式: ``` 页面路径,场景值 ``` 示例: ``` pages/index/index,home pages/about/about,about pages/user/user,profile ``` ## 目录结构 ``` mini-program-qr/ ├── src/ │ ├── config.py # 配置文件 │ ├── access_token.py # 获取access_token │ └── generate_qr.py # 生成二维码核心功能 ├── qr_codes/ # 二维码保存目录 ├── main.py # 主程序入口 ├── batch_config.txt # 批量生成配置文件 ├── requirements.txt # 依赖包 ├── .env # 环境变量配置 └── .mise.toml # mise 配置 ``` ## 常见问题 ### access_token 失效(错误码 40001) 程序会自动处理 token 失效问题并重试。如果仍然失败: ```bash # 删除缓存的 token 文件 rm -f access_token.json # 重新运行程序 python main.py ``` ### 网络请求超时 检查网络连接,或增加请求超时时间(默认30秒)。