学校的中国留学生微信群满员了(500人),新同学加不进来。解决问题有两种方案,一是换成QQ群,这样最高可以支持2000人(不要抱怨微信,本来微信就不是为这种功能设计的);二是再建一个微信群,分成两组。第一个方案被否决了,因为很多人不用QQ;第二个方案的缺点显而易见,两个群消息不互通,实际使用起来非常僵硬。。。。。。
正为这事伤脑筋的时候,我无意间看到了维基百科QQ群里的消息,这条消息是由机器人从IRC转发过来的。维基百科QQ群使用传话机器人在QQ、IRC、Discord三个平台之间同步消息。这不禁使我产生了一个大胆的想法——我们也可以搞一个机器人在两个群之间同步消息。
说干就干,上网查了一下,微信只为企业版提供机器人的API。。。。。行吧,但是我相信计算机领域没有堵得住的道路,又查了一下,一个名为itchat的python模组提供了收发消息的接口调用,果断pip install itchat
,启动!GG!
额。。。。。????我在浏览器打开网页版微信,又试了一下,果然!GG!
这是什么情况??上网搜了一下,近几年对机器人程序管理越来越严格,被封了网页版登录很常见。我还找到了这样一篇文章分析了一下侦测原理,觉得还是挺有道理的。垃圾腾讯!不提供API还封禁第三方机器人的接口。。。看来只能找别的办法了。其实办法还是有的,我之前写EVE脚本(EVE玩家轻骂,虽然我挖气云要挖吐了,但我确实做得不对,而且我和秋枫没关系)的时候用过按键精灵,不得不说,易语言功能真强大,完全模拟鼠标键盘的操作,直接读取屏幕内容。理论上我挂着PC端微信,写个按键精灵脚本转发两个群的消息也不是不行,但问题是我电脑还有别的用途,不能24小时挂这个东西。同时,我的服务器全是linux系统,压根也没有相应的微信客户端,这个办法在服务器上行不通的。
在反复的搜索之后,我发现,linux上能运行的微信机器人全部是基于网页版微信的接口,由于网页版微信用不了了,这一类机器人全部报废。目前已知的唯一可行的方案就是基于客户端版微信,使用第三方程序将其转化为可读取接口,方便其他程序调用。问题在于,微信客户端只有windows和mac os版。。。。。所以,linux上无法搭建微信机器人,此贴终结,GG!
其实没完,毕竟这个机器人还是很必要的,正好我有个4核8G内存的百度云服务器,可以免费装windows server系统,我继续尝试在windows上搭建微信机器人,详情请见《windoes下搭建微信机器人》。