wxBot 是用Python包装Web微信协议实现的微信机器人框架。
Web微信协议参考资料:
此版本只能运行于Python 2环境 。
使用之前需要所依赖的库:
以下的代码对所有来自好友的文本消息回复 hi , 并不断向好友 tb 发送 schedule 。
handle_msg_all
函数用于处理收到的每条消息,而 schedule
函数可以做一些任务性的工作(例如不断向好友推送信息或者一些定时任务)。
程序运行之后,会在当前目录下生成二维码图片文件 qr.png 并自动打开,用微信扫描此二维码并按操作指示确认登录网页微信。
如果运行在Linux下,还可以通过设置 WXBot 对象的 conf['qr']
为 tty
的方式直接在终端打印二维码(此方法只能在Linux终端下使用),效果如下:
handle_msg_all
函数的参数 msg
是代表一条消息的字典。字段的内容为:
整数,消息类型,具体解释可以查看 消息类型表 |
字典,消息内容,具体含有的字段请参考 消息类型表 ,一般含有 type (数据类型)与 data (数据内容)字段,type 与 data 的对应关系可以参考 数据类型表
|
字典,消息来源,字典包含 name (发送者名称,如果是群则为群名称,如果为微信号,有备注则为备注名,否则为微信号或者群昵称)字段与 id (发送者id)字段,都是字符串
|
0 |
字典, 包含 user (字典,包含 id 与 name 字段,都是字符串,表示发送此消息的群用户)与 type 、 data 字段,红包消息只有 type 字段, 文本消息还有detail、desc字段, 参考
|
0 | 字符串,表示文本消息的具体内容 |
字符串,图片数据的url,HTTP POST请求此url可以得到jpg文件格式的数据 | |
字符串,语音数据的url,HTTP POST请求此url可以得到mp3文件格式的数据 | |
由于群文本消息中可能含有@信息,因此群文本消息的 content
字典除了含有 type
与 data
字段外,还含有 detail
与 desc
字段。
数据类型, 为0(文本) |
字符串,消息内容,含有@信息 |
字符串,删除了所有@信息 |
数组,元素类型为含有 type 与 value 字段的字典, type 为字符串 str (表示元素为普通字符串,此时value为消息内容) 或 at (表示元素为@信息,
此时value为所@的用户名)
|
WXBot 对象在登录并初始化之后,含有以下的可用数据:
当前用户的微信联系人列表 |
当前用户关注的公众号列表 |
WXBot 对象还含有一些可以利用的方法
向好友发送消息,word 为消息字符串,dst 为好友用户id(Web微信数据)
|
为文件路径(此时向好友发送文件里的每一行),此方法在有重名好友时会有问题,因此更推荐使用 send_msg_by_uid(word, dst)
|
判断id为 uid 的账号是否是本帐号所关注的公众号,返回 True (是)或 False (不是)
|
此机器人会回复来自联系人的消息,以及群里@此账号的消息。
并且本帐号可以通过发送 退下 、 走开 、 关闭 、 关掉 、 休息 、 滚开 来关闭机器人的自动回复。
也可以通过发送 出来 、 启动 、 工作 来再次开启机器人的自动回复。
群聊时需要将对应的群保存到联系人列表。
要接入图灵机器人API时:
在注册账号,申请图灵key:
不接入图灵机器人API时(此时机器人对联系人消息以及群里@自己的消息统一回复 知道了 ):
欢迎对本项目提意见、贡献代码,参考:
可以自行验证,用新注册的微信号登录微信网页版,会提示:
老账号不受影响,但是肯定会渐渐推进,封掉 web API 这条路。
之后不知道能不能靠逆向或者抓包搞出来手机端 API 或者桌面 API,封装出来?
桌面的各种 API 都有了啊,只是使用价格嘛,贵。。。
估计 Web QQ 也活不久了?
尽管我从来没有用过。?
现在有一种微信营销软件 地推人员手机端生成网页版微信登陆二维码 让别人扫 然后 让别人手机上点确认授权 然后服务器端登陆网页版微信 给你的所有好友发送设定好的广告内容 这个该封
新注册的本来就很多限制,除非他完全停用网页版 API,大惊小怪
不行抓包吧,把微信 pc 端的接口抓下来
感觉像是五楼说的,这应该是你新注册的原因导致的
还有这种玩法?真是 666,话说看到”授权“两个字不应该警惕起来吗?
对电脑真正精通的人会注意 但是这样的人真的很少啊 大多数人都搞不懂啊
本地有个公司 给内部员工推荐的软件 说零售 100 元 团购 80 元 我小伙伴在那个公司里面 他和我说的 我一眼就看穿了
感觉这种软件 会异地登陆微信 而且群发广告 很容易封微信号
我是在电脑上只用 Web wechat,坚决不用客户端和 chrome 插件,后两者说没有后门,鬼才相信。
手机用两个,一个是干净的美版 iphone,不插卡只连 wifi 和 ***,所有 app 都是非国产,作为日常使用。另一个是用了很多年的安卓旧手机,插 sim 卡,***微信支付宝这些必须的国产(流氓)app,让它们自己打去
只是新帐号的限制而已,不是代表 API 被封
明显是灰度发布啊。将来全部能用了
明显是灰度发布啊。将来全不能用了
是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。