Python 微信自动化工具开发系列03_自动向微信好友发送信息和文件(2023年9月可用)

前言

一个需求需要利用Python+第三方库wxauto 用于微信上自动获取聊天信息,从而根据自己需求对信息自动进行二次处理,
比如自动回复,再比如自动发送文件或者其他。--- 记录于2022年07月--- 2023年9月再次测试可用

使用Python3的第三方库wxauto, 它适用于Windows的微信客户端


功能

这篇是微信自动化工具开发系列的第三篇

代码的主要功能

  • Python自动给微信好友发送信息,发送文件

  • Python自动给多个微信好友发送文件,每个好友发送多个文件


原因

itchat都是之前的教程,
本质上是用的微信的网页端的接口来进行数据交互的。

如果你想要使用itchat的代码的话,

  • 1、先测试下你的账号是否还可以登录微信网页端
  • 2、如果可以登录微信网页版 那么你可以关闭这个博客去网上找下itchat的代码来学习运行下,

如果登录失败,那么或许你可以尝试下wxauto也就是这里所说的方法来运行下。


环境

Windows 10
Python 3.8.10
Windows 10的微信客户端版本:3.7.5.23 (中文版本)

安装

  • 安装第三方库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. 新建main03.py

from wxauto import *# 获取当前微信客户端
wx = WeChat()# 获取会话列表
wx.GetSessionList()########################################################################################################################
# 函数功能: 单个用户 单个文件发送
########################################################################################################################
def send_file_to_single_user(file, user):# 向某人发送文件(以`文件传输助手`为例,发送三个不同类型文件)print("******************************************")try:print(f"开始向单个用户`{user}`发送文件:{file}")wx.ChatWith(who)  # 打开`文件传输助手`聊天窗口wx.SendMsg("123")wx.SendFiles(file)print("发送完毕")except Exception as e:print("发送失败,原因:", e)print("******************************************")########################################################################################################################
# 函数功能: 单个用户 单个文件发送
########################################################################################################################
def send_files_to_mul_user(files, users):print("******************************************")# 向某人发送文件(以`文件传输助手`为例,发送三个不同类型文件)for who in users:print(f"开始跟{who}发送文件")wx.ChatWith(who)for file in files:print(f"向用户`{who}`发送文件:{file}")wx.SendFiles(file)print("发送成功")print("******************************************")if __name__ == '__main__':##################################################################################################################### 函数功能: 单个用户 单个文件发送####################################################################################################################file = r'C:\Users\Pictures\202205\01.jpg'  # 修改为你的文件路径who = '文件传输助手'     # 适用于中文版微信send_file_to_single_user(file=file, user=who)##################################################################################################################### 函数功能: 多个用户 每个用户发送多个文件####################################################################################################################whos = ['文件传输助手', '什么']  # 适用于中文版微信files = [r'C:\Users\Pictures\202205\01.jpg',r'C:\Users\Pictures\202205\02.jpg']  # 修改为你的文件路径send_files_to_mul_user(files=files, users=whos)

2. 打开微信

  • windows10下打开微信客户端 (注:如果用的英文,记得点击左下角Settings-> General 切换为中文)
  • 正常扫码登录
  • 打开微信窗口到前面,不要最小化或者缩小到底部菜单

3. 执行代码

cd E:\2022Python  # 修改为你的main03.py所在路径
python3 main03.py

4. 输出

PS E:\2022Python> python3 main03.py******************************************
开始向单个用户`文件传输助手`发送文件:C:\Users\Pictures\202205\01.jpg
发送完毕
******************************************
******************************************
开始跟文件传输助手发送文件
向用户`文件传输助手`发送文件:C:\Users\Pictures\202205\01.jpg
向用户`文件传输助手`发送文件:C:\Users\Pictures\202205\02.jpg
开始跟什么发送文件
向用户`什么`发送文件:C:\Users\Pictures\202205\01.jpg
向用户`什么`发送文件:C:\Users\Pictures\202205\02.jpg
发送成功
******************************************

后续


  • 如果你本身懂代码的话
  • 如果你本身不懂代码

其他

本文链接:https://my.lmcjl.com/post/8644.html

展开阅读全文

4 评论

留下您的评论.