这个包可以用于Windows版本微信客户端自动化,可实现简单的发送、接收微信消息、保存聊天图片等多种微信功能(本人代码新手匿名膜拜大佬)
原网页:Hello from wxauto | wxauto (loux.cc)
(另外还有一个包是“itchat”,这个包是作用于网页版的微信,但是我在用这个包时,在登录环节扫码登录后会反复弹出新的二维码,暂时找不到解决方法,疑似网页版微信不可用)
这个包里的好玩的代码还是很多的,这次只介绍一下自动发消息和获取聊天窗口的消息
首先肯定是下载软件包“wxauto”
下载:
如果你想直接下载到本地环境,可以用win+R快速召唤cmd,进行下载
或者在pycharm里面直接下载
点击左侧工具栏里的python软件包的按钮输入wxauto进行安装
但是这个环节还是很容易出问题滴(因为我比较拉,所以在这遇到了问题(悲
首先,如果你用cmd下载,且代码编译器正好不是版本比较新的pycharm(例如VScode),那么没问题,用的时候直接调包就OK
那这个时候有人就要问了,那如果我用的就正好是最近的版本的pycharm呢?
诶!如果你用的pycharm版本比较新,在创建python文件时不做任何额外操作(例如配置自定义解释器)的话pycharm会自动帮你创建一个虚拟环境(.venv文件),此时你是无法调用本地环境的包的(在cmd里下载的为本地环境)
此时有四个解决办法:
1.简单粗暴法:在pycharm里直接下载(比较方便,但有时下载较慢,挂梯子好像会快一些?)
2.不嫌麻烦法:找到cmd中下载的包和包的路径,通常在python的Lib文件夹里的site_packages里,将要用到的包复制下来,在虚拟环境(.venv文件)的Lib文件里粘贴下来(比较麻烦,而且有时会在复制粘贴时少包)
3.另辟蹊径法:去学一学自定义配置解释器(应该不难,但我没学,不会)
4.弃暗投明法:放弃pycharm,用别的代码编译器 (个人推荐VScode,好用)
好了,下载完之后我们在打开并登录微信客户端之后,就可以着手写代码了
代码:
发送消息:
是的,就这么简简单单三行代码(要不怎么说好用嘛)
SendMsg()方法比较重要的两个参数:msg(你要发送的信息,括号里第一个字符串)和who(你要发送消息的用户,括号里第二个字符串)
效果演示:
PS:鼠标指针是自动移动
如果你用的是遍历查找好友,那么代码应该如下:
这个就比较有意思了,你的鼠标指针会点击你的通讯录,然后一直翻,直到找到目标用户
PS:该包兼容的微信版本为3.9.11.x版本,我的是3.9.12,可能是版本不兼容问题(大概率是别的问题),所以遍历代码会报错,说是找不到目标好友,所以不做演示了
获取消息:
GetAllMessage方法用于加载缓存消息(可以这样说吗?就是不有加载就可以显示的消息
该方法获取文本类型消息时不用加参数,还有其他三个参数为
savepic:是否保存聊天图片,默认为False
savefile:是否保存聊天文件,默认为False
savevoice:是否保存聊天语音转文字内容,默认为False
另外还有LoadMoreMessage方法用于加载更多历史消息,需要配合GetAllMessage方法使用
先调用前者,再调用后者
效果演示: