微信机器人是根据web微信协议开发的,用于实现特定功能(比方自动回复,自动添加好友,自动发群信息)的产品。 该类产品轮子很多,大家可以自行搜索。
本项目是根据wxBot项目深度开发,有关wxbot.py代码,也可以参考该项目。
1、多用户,多线程,后台运行
2、提供Web界面,方便用户使用
3、自动保存聊天历史图片和语音
4、可以长时间在线运行
- [部署目录]
- [data] -- 系统配置,用户配置和用户数据目录
- robot_config.json -- 系统配置
- [plugin] -- 插件目录
- [static] -- Web程序,JS,CSS存放目录
- [template] -- Web程序,前端模板目录
- daemon.py -- 后台进程处理
- icon.ico -- web index icon
- main.spec -- 生成单个可执行文件配置
- make.cmd -- 生成单个可执行文件命令
- myBot.py -- 插件功能处理单元
- requirements.txt -- 依赖库
- robsSrv.py -- 主服务程序
- util.py -- 通用功能程序
- wxbot.py -- Web微信APi核心单元
- [data] -- 系统配置,用户配置和用户数据目录
目前测试在python2.7.5以上版本,3.5以上版本都可以运行,请自行安装python环境。
1、下载代码
#cd /home
#git clone https://github.com/codingtoworld/wxrobot.git
或者直接下载Zip文件,解压缩到/home/wxrobot下
2、安装扩展:
#cd wxrobot
#pip -r requirements.txt
也可以使用虚拟环境安装。 目前测试在python2.7.5以上版本,3.5以上版本都可以运行 实际测试 python3需要做版本改造. daemon.py: line114 : except OSError, err: => except OSError as err: daemon.py: line56 si = file(self.stdin, 'r') => si = open(self.stdin, 'r')
1、配置web账户
配置文件为data/robot_config.json,结构如下:
{
"auth":{
"json": {
"codingtoworld": "586078aa040e495e437c2913e69064ef",
"账户名称2": "MD5密码值"
}
}
}
上面文件中可以配置多个账户,编辑好配置文件,登陆时使用对应的账户和密码登陆即可。
2、配置绑定IP地址和端口 在utils.py中,更改IP地址和端口号
SRV_BIND_IP='192.168.0.1'
SRV_LISTEN_PORT=8000
运行程序:
python /home/wxrobot/robsSrv.py start|stop|restart
start:启动程序,同时启动web服务,程序后台运行
stop:停止程序
restart:重启程序
访问方法:浏览器直接输入地址:http://ipaddress:port/
Facebook: https://facebook.com/codingtoworld
Twitter:https://twitter.com/codingtoworld
定制开发:联系邮件codingtoworld(AT)GMail.com (AT)替换成@
BitCoin: 1K5apYN4k3UNdymo3qSfRWAehgri3skczQ