重磅通知登录网页端,那么本次更新将是你的福音。因为目前的wechaty-puppet-wechat已经支持使用UOS微信桌面版协议登录,快来试试吧。关键依赖的使用方法:npminstallwechaty-puppet-wechat--save不侵入已有代码,更新依赖即可1.首先安装最新的wechaty-puppet-wechat依赖并配置环境npminstallqrcode-terminal--savenpminstallwechatynpminstallwechaty-puppet-wechat--save//这个依赖是关键exportWECHATY_PUPPET=wechaty-puppet-wechat//这个也是关键,需要配置你使用的puppet二、请确保你的puppet配置为wechaty-puppet-wechat。如果你使用的是ipadlocal,想体验web协议,还需要按照配置示例:index.jsconst{Wechaty}=require('wechat');constname='wechat-puppet-wechat';letbot='';bot=newWechaty({name,//生成xxxx.memory-card.json并保存登录数据,以备下次登录});//二维码生成函数onScan(qrcode,status){require('qrcode-终端').生成(二维码);//在控制台显示二维码constqrcodeImageUrl=['https://wechaty.js.org/qrcode/',encodeURIComponent(qrcode),.join('');console.log(qrcodeImageUrl);}//登录异步函数onLogin(user){console.log(`贴心小助手${user}已登录`);if(config.AUTOREPLY){console.log(`机器人自动聊天模式开启`);}//登录后创建定时任务awaitinitDay();}//注销函数onLogout(user){console.log(`助手${user}已注销`);}bot.on('scan',onScan);bot.on('login',onLogin);bot.on('logout',onLogout);bot.start().then(()=>console.log('开始登录微信')).catch((e)=>console.error(五));按照上面的配置,只要拿起手机扫一扫二维码,你就会发现之前无法登录的微信也可以登录了。没有惊喜,惊喜并不常见。网页端登录微信?请检查你的项目根目录下是否有类似wechaty-puppet-wechat.memory-card.json的文件。如果是,请将其删除并重新执行。存储的cookies可能已经过期(最新版本已经修复了这个问题)2.这个puppet能保证一直绕过web登录吗?目前看来web端的限制是可以绕过的,但不保证以后会变。3、绕过这个限制,微信会不会发现并拉黑你?目前的绕过方式其实是使用了UOS桌面版的微信请求头,所以如果不做违反微信协议的事情,大概率是不会出问题的。如果你违反了微信的规则,那你就不知道了。更多问题会根据反馈继续补充。具体实现原理可以参考这个issue。代码修改参考https://github.com/wechaty/wechaty-puppet-wechat/pull/129大致意思是UOS下的微信只是网页版的electron集合,所以有高手对比了请求头发现只要先在请求的地址https://wx.qq.com/?target=t上加上一个?target=t然后拦截请求https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpageafterscanningthecodeandloggingin,andaddtwofixedonestotherequestheader参数extspam='Gp8ICJkIEpkICggwMDAwMDAwMRAGGoAI1GiJSIpeO1RZTq9QBKsRbPJdi84ropi16EYI10WB6g74sGmRwSNXjPQnYUKYotKkvLGpshucCaeWZMOylnc6o2AgDX9grhQQx7fm2DJRTyuNhUlwmEoWhjoG3F0ySAWUsEbH3bJMsEBwoB//0qmFJob74ffdaslqL+IrSy7LJ76/G5TkvNC+J0VQkpH1u3iJJs0uUYyLDzdBIQ6Ogd8LDQ3VKnJLm4g/uDLe+G7zzzkOPzCjXL+70naaQ9medzqmh+/SmaQ6uFWLDQLcRln++wBwoEibNpG4uOJvqXy+ql50DjlNchSuqLmeadFoo9/mDT0q3G7o/80P15ostktjb7h9bfNc+nZVSnUEJXbCjTeqS5UYuxn+HTS5nZsPVxJA2O5GdKCYK4x8lTTKShRstqPfbQpplfllx2fwXcSljuYi3YipPyS3GCAqf5A7aYYwJ7AvGqUiR2SsVQ9Nbp8MGHET1GxhifC692APj6SJxZD3i1drSYZPMMsS9rKAJTGz2FEupohtpf2tgXm6c16nDk/cw+C7K7me5j5PLHv55DFCS84b06AytZPdkFZLj7FHOkcFGJXitHkX5cgw3p0yM6F7SoXTx6GX4G6Hg2rYx3O/9VU2Uq8lvURB4qIbD9XQpzmyiFMaytMnqxcZJcoXCtfkTJ6pI7a92JpRUvdSitg967VUDUAQnCXCM/m0snRkR9LtoXAO1FUGpwlp1EfIdCZFPKNnXMeqev0j9W9ZrkEs9ZWcUEexSj5z+dKYQBhIICviYUQHVqBTZSNy22PlUIeDeIs11j7q4t8rD8LPvzAKWVqXE+5lS1JPZkjg4y5hfX1Dod3t96clFfwsvDP6xBSe1NBcoKbkyGxYK0UvPGtKQEE0Se2zAymYDv41klYE9s+rxp8e94/H8XhrL9oGm8KWb2RmYnAE7ry9gd6e8ZuBRIsISlJAE/e8y8xFmP031S6Lnaet6YXPsFpuFsdQs535IjcFd75hh6DNMBYhSfjv456cvhsb99+fRw/KVZLC3yzNSCbLSyo9d9BI45Plma6V8akURQA/qsaAzU0VyTIqZJkPDTzhuCl92vD2AD/QOhx6iwRSVPAxcRFZcWjgc2wCKh+uCYkTVbNQpB9B90YlNmI3fWTuUOUjwOzQRxJZj11NsimjOJ50qQwTTFj6qQvQ1a/I+MkTx5UO+yNHl718JWcR3AXGmv/aa9rD1eNP8ioTGlOZwPgmr2sor2iBpKTOrB83QgZXP+xRYkb4zVC+LoAXEoIa1+zArywlgREer7DLePukkU6wHTkuSaF+ge5Of1bXuU4i938WJHj0t3D8uQxkJvoFi/EYN/7u2P1zGRLV4dHVUsZMGCCtnO6BBigFMAA='client-version'='2.0.0',这样就可以完美的使用桌面版协议了。非常感谢@LuvLetter的讲解和@artxia的chrome插件代码,让我有机会为wechaty-puppet-wechat添砖加瓦。如果想快速体验微信的完整功能,以及可视化配置功能,可以关注我的《微信每日说》和《智能微秘书》项目,以上项目已经更新到最新版本的网页版协议,都支持web登录历史文章wechaty-web-panel可视化插件三步教你用Node做微信下单神器,小白也能上手本文由多贴博客OpenWrite发表平台!