微信网页版掉线故障-EFB掉线
微信网页版复活之后,上个月末发现掉线了,经测试本地的网页版登录是正常的(如不能登录再次尝试1.登录微信新上线的网页版文件传输助手 https://filehelper.weixin.qq.com 2.登录微信网页版,即可正常登录https://wx.qq.com),但是在efb上再登录发现无法登录,扫码之后报错(见末尾), 手机端不提示登录网页版,灰常的不舒服!
github查询各种方法
例如
更改login.py
phoenixxie0 提出
UOS的微信正式版发布了,所以登录接口变了,需要继续使用的可以删除efb_wechat_slave/vendor/itchat/components/login.py第107行的?mod=desktop
https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpage?mod=desktop
修改成
https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpage
前提条件是微信本来可以登录网页版
遂进行测试,docker exec -it ews /bin/sh
之后,找到/usr/lib/python3.*/site-packages/efb_wechat_slave
文件夹,我的python是3.9的 对应位置为/usr/lib/python3.9/site-packages/efb_wechat_slave
,可以直接用命令docker exec -it ews sed -i 's/webwxnewloginpage?mod=desktop/webwxnewloginpage/g' /usr/lib/python3.9/site-packages/efb_wechat_slave/vendor/itchat/components/login.py
完成修改,重启ews,重新登录,失败+1。
降级 efb_wechat_slave
继续查询,blueset大佬
提出
可以使用 web wc 的用户可以试试降级到 EWS 2.0.4 取消 UOS 补丁。
遂继续测试,发现akyakya/efb-v2:dev
的docker在2.0.5发布之前,遂更换为此镜像,重新登录,失败+2。。。
清楚登录Session
然后不死心,谷歌错误提示码搜到
Web WeChat logged your account out before master channel is ready
#61
,blueset大佬
建议
”Web WeChat logged your account out before master channel is ready.”
「网页版微信在主端就绪前已将您登出。」
请尝试将您的登陆 Session 清除后重新登录。Session 文件存储在 EFB_DATA_PATH/profiles/<YOUR_PROFILE>/blueset.wechat/wxpy.pkl.
于是将blueset.wechat下的wxpy.pkl删除(提前备份),wxpy_puid.pkl(包含绑定到组的信息,如果删除要重新绑定),重新登录,恢复正常。。。
后记
由于没有对问题进行排查,所以不知道是直接删除session即可还是需要前面的更改login.py的操作,反正能用了就好。存在类似问题的可以尝试一下。
报错信息
2022-01-03 22:42:36,268 [Level 99]: ehforwarderbot.__main__ (__main__.init; __main__.py:137)
Slave channel WeChat Slave (blueset.wechat) # Default profile is initialized.
2022-01-03 22:42:36,269 [Level 99]: ehforwarderbot.__main__ (__main__.init; __main__.py:142)
Initializing master blueset.telegram...
Exception in thread itchat polling thread (maintain_loop):
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.8/site-packages/efb_wechat_slave/vendor/itchat/components/login.py", line 295, in maintain_loop
exitCallback()
File "/usr/lib/python3.8/site-packages/efb_wechat_slave/__init__.py", line 261, in exit_callback
raise Exception(
Exception: Web WeChat logged your account out before master channel is ready.
2022-01-03 22:42:37,416 [Level 99]: ehforwarderbot.__main__ (__main__.init; __main__.py:149)
Master channel Telegram Master (blueset.telegram) # Default profile is initialized.
2022-01-03 22:42:37,417 [Level 99]: ehforwarderbot.__main__ (__main__.init; __main__.py:155)
All channels initialized.
2022-01-03 22:42:37,417 [Level 99]: ehforwarderbot.__main__ (__main__.init; __main__.py:169)
All middlewares are initialized.