微信机器人开发
前言
最近在搞微信機器人的東西,想必很多人都聽過,那些有女朋友的程序員有的也會給自己女朋友定制一個微信機器人,給機器人接上一些有趣的接口,啥土味情話,天氣預報就都上來了,確實很有趣,就找了時間研究一下。
wechaty
wechaty是一個微信機器人的工具包,他會為你提供一系列的功能,包括收發(fā)信息,建群,群內(nèi)加好友,自動通過好友申請等,開發(fā)微信機器人一般用的都是這個,這個沒啥好說的,基本上看文檔就知道怎么做了。
wechaty下面的一些木偶(puppet)版本
puppet就是wechaty用來操控微信的東西,就像puppeteer一樣,只不過操控微信不像puppeteer那么簡單,他有好多個版本,下面就簡單介紹一下各個版本的區(qū)別。
puppet-service
我試了那么多個來看最強的版本應該是puppet-service,這個就是用平板的微信版本進行操控,功能也最為齊全,但是這個版本的需要token,就是要給錢,他的原理應該是別人在服務器上模擬平板的微信,你通過一個token訪問到他的服務器上,登錄微信,使用api接口進行通信,別人因為有服務器的開銷所以會要你給錢,具體別人怎么做的不清楚,別人研究出來賣錢的東西。
puppet-wechat
puppet-wechat 這個版本是免費的,相應的功能也少,能夠收發(fā)信息,但是能夠發(fā)的信息類型只有文字和文件,這個版本內(nèi)部用的是網(wǎng)頁版微信進行操控,掃碼登錄,那些無法登錄微信網(wǎng)頁版的微信號現(xiàn)在也能夠正常使用這個版本,需要開啟一個uos選項
WechatyBuilder.build({name: 'wechat-bot',puppet: 'wechaty-puppet-wechat',puppetOptions: {uos: true, // 開啟這個選項后無法登錄微信網(wǎng)頁版的微信號也能正常登錄head: false}, })puppet-xp
puppet-xp版本是使用pc版微信去操控的,功能和puppet-wechat差不了太多,但是這個版本能夠拿到微信唯一id,如果是用來做客服之類的功能,使用這個版本我認為是最好的,但是也有局限性,只能使用Windows WeChat 3.3.0.115版本進行開發(fā)。收發(fā)消息也和puppet-wechat版本一樣,只支持文字和圖片。但是經(jīng)過一系列深扒源碼不斷地試驗發(fā)現(xiàn),這個版本其實還能發(fā)小程序和鏈接卡片,但是這塊要實現(xiàn)的話就得改puppet-xp包的源碼了,這塊有時間再寫一篇來說說。
總結
上面提到的那些木偶版本目前來說都是能用的,根據(jù)需求而定吧。底層的邏輯我覺得才是最值得注意的地方,web版的木偶是直接調(diào)用微信接口完成各類動作的,pc版本的木偶是通過往微信里面掛一個dll直接調(diào)用微信的方法去實現(xiàn)的。第一個web版本其實微信官方完全可以堵住,第二個pc版因為用的是舊版的微信可能堵截起來就比較困難了,我覺得這種東西是帶有一定的危險性的,有心之人很容易利用這種東西,至于用來干嘛那就不得而知了。
總結
- 上一篇: 【机器视觉学习笔记】Harris 角点检
- 下一篇: Exynos4412启动过程分析