一个需求
需要利用Python+第三方库wxauto 用于微信上自动获取聊天信息,从而根据自己需求对信息自动进行二次处理,
比如自动回复,再比如自动发送文件或者其他。
--- 记录于2022年08月
--- 2023年7月再次测试可用
使用Python3的第三方库wxauto
, 它适用于Windows的微信客户端
官网: https://github.com/cluic/wxauto
这篇是微信自动化工具开发系列的第四篇
代码的主要功能:
比如这里: 执行一次, 将微信群里
不同群
的所有文件同步覆盖拷贝
到C:\Users\hyh\Documents\01\
中不同的群名文件夹中
需要修改配置文件
注:这个功能不需要用
wxauto
Windows 10
Python 3.8.10
Windows 10的微信客户端版本:3.7.5.23 (中文版本)
注:微信客户端中文版跟英文版都可以
没什么太大区别。建议使用中文版本,英文版本现在微信更新后出现了Bug.
安装Python3的第三方库
wxauto
,具体步骤如下
官网: https://github.com/cluic/wxauto
在cmd窗口执行下面命令进行安装
wxauto
python3 --version
python3 -m pip install wxauto -i https://pypi.tuna.tsinghua.edu.cn/simple
wxauto
是否安装成功python3 -c "import wxauto; print(wxauto.VERSION)"
import shutil
import os
def copy_wx_file_to_new_dir(input_dir, output_dir, wx_group_dict):
i = 0
for value in wx_group_dict.values():
i += 1
print("*" * 50)
print(f"开始处理第{i}个群")
wechat_group_id = value['id']
wechat_group_name = value['name']
temp_input_dir = input_dir + '\\' + wechat_group_id + '\\File'
temp_output_dir = output_dir + '\\' + wechat_group_name
print_temp_output_dir = temp_output_dir.replace('\\\\', '\\')
try:
print(f"开始拷贝{wechat_group_name}的文件到新文件夹:{print_temp_output_dir}")
if os.path.exists(temp_output_dir):
shutil.rmtree(temp_output_dir)
shutil.copytree(temp_input_dir, temp_output_dir)
print("拷贝结束")
except Exception as e:
print("拷贝报错:", e)
if __name__ == '__main__':
# 群名跟id对应关系,打开微信一个群,点击`聊天记录`,右击`文件`,查看其中的一个文件右击`点开文件所在文件夹`,获得其中的`id`
wx_group_dict = {
0: {
'id': '2291da65c17fd645845fdf42e0cc7664',
'name': '群名一'
},
1: {
'id': 'a9ed29cc2643a3bebcb74b4bae488af2',
'name': '群名二'
},
}
# 本地配置
output_dir = r'C:\Users\aaa\Documents\01' # 输出目录,改成本地的
input_dir = r'C:\Users\aaa\Documents\WeChat Files\wxid_123123\FileStorage\MsgAttach' # 微信默认保存目录,改成本地的
####################################################################################################################
# 函数功能: 文件拷贝到新的文件夹里面
####################################################################################################################
copy_wx_file_to_new_dir(input_dir, output_dir, wx_group_dict)
Settings
-> General
切换为中文)修改main04.py
的配置
wx_group_dict: 群名跟id对应关系,打开微信一个群,点击
聊天记录
,右击文件
,查看其中的一个文件右击点开文件所在文件夹
,获得其中的id
input_dir: 微信默认保存目录,改成本地的
output_dir: 想要保存的输出目录,改成本地的
# 群名跟id对应关系,打开微信一个群,点击`聊天记录`,右击`文件`,查看其中的一个文件右击`点开文件所在文件夹`,获得其中的`id`
# 如: C:\Users\aaa\Documents\WeChat Files\wxid_123\FileStorage\MsgAttach\12d87d05b941e072f58e5290f995db01\File\2022-07
# 其中 7bd87d05b941e072f58e5290f995db01 即为这个群对应id
wx_group_dict = {
0: {
'id': '7bd87d05b941e072f58e5290f995db01',
'name': '群名一'
},
1: {
'id': 'a9ed29cc2643a3bebcb74b4bae488af2',
'name': '群名二'
},
}
# 本地配置
output_dir = r'C:\Users\aaa\Documents\01' # 输出目录,改成本地的
input_dir = r'C:\Users\aaa\Documents\WeChat Files\wxid_123123\FileStorage\MsgAttach' # 微信默认保存目录,改成本地的
main04.py
打开cmd窗口,在cmd窗口执行:
如果没有安装第三方库,参考上面的
安装
步骤进行安装再执行下面命令
cd E:\2022Python # 修改为你的main03.py所在路径
python3 main04.py
cmd窗口输出结果为:
PS E:\2022Python> python3 .\04_保存用户的群文件到指定文件夹.py
**************************************************
开始处理第1个群
开始拷贝群名一的文件到新文件夹:C:\Users\hyh\Documents\01\群名一
拷贝结束
**************************************************
开始处理第2个群
开始拷贝群名二的文件到新文件夹:C:\Users\hyh\Documents\01\群名二
拷贝结束
C:\Users\hyh\Documents\01\
文件夹下查看到不同群名命名的文件夹这边刚开始写一下系列文章,想发展下自己的博客和微信公众号账号
如果对你有帮助,方便的话可以关注下 博客左侧的微信公众号(点击我的头像进入个人中心,位于左侧下方)
如有问题的话,也可通过公众号直接留言,这边有微信提醒,可以几小时内及时回复
也可直接在CSDN博客留言或者私信留言,这个没有微信提醒,所以这边可能一天或者几天内给回复
微信公众号所在位置:打开
个人中心
也就是这个链接
https://blog.csdn.net/xiaozi_001?type=blog
左侧下方
如有需求,
想要对微信进行一些自动化操作来提高效率:
比如
自动群发不同聊天信息到几个微信群里
自动群发不同的图片到几个微信群里
自动群发不同的文件到几个微信群里
如果你本身懂代码的话, 直接看第三方库
wxauto
的使用,自己来写就可以了,博客后续也会基于这个系列继续更新。
欢迎点赞留言提出问题,方便的话 点赞收藏 关注下微信公众号
只是想要一个简单的微信处理工具来满足自己的需求的话
可以微信公众号留言或者私信留言,
发下你的具体需求,这边后续根据你的需求进行下二次开发
如有需求,可关注下博客左侧的微信公众号留言或者直接私信留言
前者可以几小时内及时回复
后者可能看的不及时,大概一天或者几天内有回复
如有问题 欢迎提出
如有疑问 欢迎留言
如有作用 欢迎点赞
如有失效 欢迎留言
2023年7月 可用