# WXAUTO-HTTP-API
**Repository Path**: jizuiba/WXAUTO-HTTP-API
## Basic Information
- **Project Name**: WXAUTO-HTTP-API
- **Description**: No description available
- **Primary Language**: Python
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-06-26
- **Last Updated**: 2025-06-26
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 🚀 wxauto_http_api




> **致谢**:本项目基于 [wxauto](https://github.com/cluic/wxauto) 项目做二次开发,感谢原作者的贡献。
>
> **推荐搭配**:本项目建议配合 [WXAUTO-MGT](https://github.com/zj591227045/WXAUTO-MGT) 项目使用,可以获得最佳体验。
基于wxauto的微信HTTP API接口,提供简单易用的HTTP API调用微信功能,同时支持可选的wxautox扩展功能。通过本项目,您可以轻松地将微信集成到您的应用程序中。
wxauto_http_api 管理界面预览 - 提供直观的服务管理、配置和日志监控功能
## ✨ 功能特点
- 📱 **内置wxauto微信自动化库**:作为核心依赖直接集成,开箱即用
- 🚀 **内置wxautox扩展功能**:增强版微信自动化库,提供更强大的功能和更高的稳定性
- 🌐 **完整的HTTP API接口**:简单易用的RESTful API
- 💬 **丰富的消息功能**:支持文本、图片、文件、视频等多种消息类型
- 👥 **群聊和好友管理**:支持群聊创建、成员管理、好友添加等功能
- 🔄 **实时消息监听**:支持实时获取新消息
- 🖥️ **图形化管理界面**:提供直观的服务管理和配置界面
- 🔑 **智能激活管理**:自动保存和管理wxautox激活码
- 📦 **一体化打包**:所有依赖库都打包在可执行文件中,无需额外安装
## 🔧 安装说明
### 前置条件
- **Python 3.7+**:确保已安装Python 3.11或更高版本
- **Windows操作系统**:目前仅支持Windows平台
- **微信PC客户端**:确保已安装并登录微信PC客户端,建议使用微信3.9版本
### 安装步骤
#### 方式一:使用打包版本(推荐)
1. **下载最新发布版本**
- 从 [Releases](https://github.com/yourusername/wxauto_http_api/releases) 页面下载最新的 `wxauto_http_api.zip` 文件
- 解压到任意目录(路径中最好不要包含中文和特殊字符)
2. **直接运行**
- 双击 `wxauto_http_api.exe` 启动图形界面(推荐)
- 或者使用 `start_ui.bat` 启动图形界面
- 或者使用 `start_api.bat` 仅启动API服务
3. **配置wxautox(可选)**
- wxautox已作为依赖自动安装
- 如需使用wxautox增强功能,在图形界面中点击"激活wxautox"按钮,输入您的激活码
#### 方式二:从源码安装
1. **克隆本仓库**
```bash
git clone https://github.com/yourusername/wxauto_http_api.git
cd wxauto_http_api
```
2. **安装依赖**
```bash
# 安装所有依赖(包括wxauto和wxautox)
pip install -r requirements.txt
```
> **注意**:wxauto和wxautox已作为核心依赖包含在requirements.txt中,会自动安装。
3. **启动应用**
```bash
# 启动图形界面
python main.py --service ui
# 或者直接双击 start_ui.bat
```
## 🚀 使用说明
### 启动方式
本项目提供三种启动方式:
1. **可执行文件直接运行**(最简单)
```bash
# 直接双击可执行文件
wxauto_http_api.exe
```
2. **图形界面模式**(开发环境)
```bash
# 方式1:使用Python命令
python main.py --service ui
# 方式2:直接双击批处理文件
start_ui.bat
```
3. **仅API服务模式**
```bash
# 方式1:使用Python命令
python main.py --service api
# 方式2:直接双击批处理文件
start_api.bat
```
默认情况下,API服务将在 `http://0.0.0.0:5000` 上启动。
### 图形界面功能
图形界面提供以下功能:
- **服务管理**:启动/停止API服务
- **库选择**:选择使用wxauto或wxautox库
- **激活管理**:管理wxautox激活码,自动激活
- **配置管理**:修改端口、API密钥等配置
- **日志查看**:实时查看API服务日志
- **状态监控**:监控服务状态、资源使用情况
### API密钥配置
有两种方式配置API密钥:
1. **通过图形界面配置**:
- 点击"插件配置"按钮
- 在弹出的对话框中设置API密钥
2. **通过配置文件配置**:
- 在 `.env` 文件中添加以下内容:
```
API_KEYS=your_api_key1,your_api_key2
```
### 📚 API接口说明
所有API请求都需要在请求头中包含API密钥:
```
X-API-Key: your_api_key
```
#### 初始化微信
```http
POST /api/wechat/initialize
```
#### 发送消息
```http
POST /api/message/send
Content-Type: application/json
{
"receiver": "接收者名称",
"message": "消息内容",
"at_list": ["@的人1", "@的人2"],
"clear": true
}
```
#### 获取新消息
```http
GET /api/message/get-next-new?savepic=true&savevideo=true&savefile=true&savevoice=true&parseurl=true
```
#### 添加监听对象
```http
POST /api/message/listen/add
Content-Type: application/json
{
"who": "群名称或好友名称",
"savepic": true
}
```
#### 获取监听消息
```http
GET /api/message/listen/get?who=群名称或好友名称
```
更多API接口请在图形界面中点击"API说明"按钮查看详细文档。
## 🔄 库的选择
本项目内置两种微信自动化库:
- **wxauto** 📱:开源的微信自动化库,功能相对基础,**已内置集成**
- **wxautox** 🚀:增强版的微信自动化库,提供更多功能和更高的稳定性,**已内置集成,需要激活码**
### 选择使用哪个库
您可以通过以下方式选择使用哪个库:
1. **通过图形界面选择**(推荐):
- 在图形界面中选择"wxauto"或"wxautox"单选按钮
- 点击"重载配置"按钮使配置生效
2. **通过配置文件选择**:
- 在 `.env` 文件中设置 `WECHAT_LIB` 参数
```bash
# 使用wxauto库
WECHAT_LIB=wxauto
# 或者使用wxautox库
WECHAT_LIB=wxautox
```
### 配置微信自动化库
#### wxauto库
- **无需额外配置**:wxauto库已内置,选择后即可直接使用
#### wxautox库
1. **配置激活码**:
- **通过图形界面**(推荐):在图形界面中点击"激活wxautox"按钮,输入您的激活码
- **通过命令行**:使用 `wxautox -a [激活码]` 命令手动激活
2. **自动激活**:
- 激活码会被安全保存在本地配置文件中
- 每次启动服务时会自动执行激活,无需重复输入
> **注意**:两个库都已内置在程序中,无需额外安装。如果您选择了wxautox但未配置激活码,程序会提示相应的错误信息。
## ⚙️ 自定义配置
### 通过图形界面配置
推荐使用图形界面进行配置,点击"插件配置"按钮可以修改以下配置:
- **端口号**:API服务监听的端口号
- **API密钥**:访问API所需的密钥
### 通过配置文件配置
您也可以在 `.env` 文件中进行更多高级配置:
```ini
# API配置
API_KEYS=your_api_key1,your_api_key2
SECRET_KEY=your_secret_key
# 服务配置
PORT=5000
# 微信监控配置
WECHAT_CHECK_INTERVAL=60
WECHAT_AUTO_RECONNECT=true
WECHAT_RECONNECT_DELAY=30
WECHAT_MAX_RETRY=3
```
## 📁 项目结构
```
wxauto_http_api/
├── app/ # 应用程序核心代码
│ ├── api/ # API接口实现
│ ├── config.py # 配置模块
│ ├── logs.py # 日志模块
│ ├── plugin_manager.py # 插件管理模块
│ ├── wxautox_activation.py # wxautox激活管理
│ ├── wechat_adapter.py # 微信适配器
│ ├── api_service.py # API服务实现
│ ├── app_ui.py # UI界面实现
│ ├── app_mutex.py # 互斥锁机制
│ ├── ui_service.py # UI服务实现
│ └── run.py # API运行模块
├── build_tools/ # 打包工具
│ ├── build_app.py # 打包脚本
│ ├── build_app.bat # 打包批处理文件
│ ├── create_icon.py # 创建图标脚本
│ └── *.spec # PyInstaller规范文件
├── data/ # 数据文件
│ ├── api/ # API数据
│ │ ├── config/ # 配置文件
│ │ ├── logs/ # API日志
│ │ └── temp/ # 临时文件
│ └── logs/ # 系统日志
├── docs/ # 文档
│ ├── ARCHITECTURE_README.md # 架构说明
│ └── PACKAGING_README.md # 打包说明
├── .env # 环境变量配置
├── main.py # 主入口点
├── requirements.txt # 依赖项列表
├── wxautox_activation.json # wxautox激活配置(自动生成)
├── initialize_wechat.bat # 初始化微信批处理文件
├── start_api.bat # 启动API服务的批处理文件
└── start_ui.bat # 启动UI服务的批处理文件
```
## ⚠️ 注意事项
- **微信客户端**:请确保微信PC客户端已登录,建议使用微信3.9版本
- **窗口状态**:使用过程中请勿关闭微信窗口
- **安全性**:API密钥请妥善保管,避免泄露
- **兼容性**:本项目仅支持Windows操作系统
- **依赖项**:使用打包版本无需安装依赖,所有库都已内置;从源码安装时需确保安装所有必要的依赖项
- **微信自动化库**:wxauto和wxautox都已作为核心依赖内置,无需额外安装
- **激活码管理**:wxautox激活码会安全保存在本地,启动时自动激活
- **打包集成**:所有依赖库都会打包到可执行文件中,确保完整的一体化体验
## 📝 许可证
[MIT License](LICENSE)
## 🤝 贡献
欢迎提交问题和功能请求!如果您想贡献代码,请提交拉取请求。