程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python 微信自動化工具開發系列04_所有微信群的群文件自動同步拷貝到群名對應的新文件夾中(2022年8月可用)

編輯:Python

前言

一個需求
需要利用Python+第三方庫wxauto 用於微信上自動獲取聊天信息,從而根據自己需求對信息自動進行二次處理,
比如自動回復,再比如自動發送文件或者其他。
--- 記錄於2022年08月

使用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)"

使用步驟

1. 新建main04.py

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)

2. 打開微信

  • windows10下打開微信客戶端 (注:如果用的英文,記得點擊左下角Settings-> General 切換為中文)
  • 正常掃碼登錄
  • 打開微信窗口到前面,不要最小化或者縮小到底部菜單

3. 執行代碼

  • 修改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

4. 輸出

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的使用,自己來寫就可以了,

博客後續也會基於這個系列繼續更新。

歡迎點贊留言提出問題,方便的話 點贊收藏 關注下微信公眾號

  • 如果你本身不懂代碼

只是想要一個簡單的微信處理工具來滿足自己的需求的話

可以微信公眾號留言或者私信留言,

發下你的具體需求,這邊後續根據你的需求進行下二次開發

如有需求,可關注下博客左側的微信公眾號留言或者直接私信留言

前者可以幾小時內及時回復

後者可能看的不及時,大概一天或者幾天內有回復


其他

如有問題 歡迎提出

如有疑問 歡迎留言

如有作用 歡迎點贊

如有失效 歡迎留言

2022年08月 可用


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved