[Python] 微信for PC自动群发消息、图片以及文件
文章目录
- 一、微信群发方式
- 二、安装方式
- 三、我的案例
- 四、wxauto库的功能整理
一、微信群发方式
1.微信官方“群发助手”
优点:这个功能确实很方便
缺点:一次只能发一条
发送内容不能含链接
不能对群发时每个人设置称呼
发送完毕在聊天窗口栏不显示
群发时发送图片与文件经常未送达且无未送达提醒
2.Itchat、wxpy
itchat是个非常强大的第三方库。
但是目前大部分用户面临由于安全问题,TX对很多用户的网页版微信进行了限制登录,itchat库无法发挥作用。出现报错:KeyError: pass_ticket
3.其他还有微信机器人、付费平台,在此不多宣传
4.wxauto第三方库
平衡之下,我发现了tikic在GitHub上面发布的wxauto第三方库,不可否认他的速度不如itchat,没有那么多人在此基础上做开发,但是wxauto基本满足我对于微信自动化的需求,并且期待后续wxauto的完善。
二、安装方式
pip install wxauto
三、我的案例
对于日常想要把一些消息通知到每一个人并确保他们能够收到,新建一个群固然快捷,但是对于社交犹豫症的人来说建群、解散群还是会对收消息的人造成很多社交麻烦,并且经常需要通知的人也在变动。
利用wxauto,实现对好友发送消息(含链接),二维码图片,以及文件。并且在发送信息前加上对于不同好友的称呼:
from wxauto import WeChat
import time, randomwx = WeChat() # 获取当前微信客户端
wx.GetSessionList() # 获取会话列表# 需要群发的好友
whos = [["微信备注名A", "称呼A"], ["微信备注名B", "称呼B"]]msg = ",这是链接:https://wj.qq.com/s2,请查收。"
file1 = "E:/FileSave/QRcode.jpg"
file2 = "E:/FileSave/data.zip"
for i in whos:who = i[0]message = i[1] + msg # 称呼和发送消息合并time.sleep(random.randint(10, 20)) # 随机等待10-20swx.ChatWith(who) # 打开聊天窗口# wx.Search(who) # 查找微信好友,不会在当前聊天栏滚动查找wx.SendMsg(message)wx.SendFiles(file1, fele2) # 可发送多个文件print("end send", i[0])print("All end send")
四、wxauto库的功能整理
wxauto目前有WxParam、WxUtils、WeChat三个类:
其中WxParam设置基本参数设置。
对于WxUtils类下面存放着主要功能函数:
函数 | 说明 |
---|---|
SetClipboard(data, dtype=‘text’) | 复制文本信息或图片到剪贴板data : 要复制的内容,str 或 Image 图像; |
Screenshot(hwnd, to_clipboard=True) | 为句柄为hwnd的窗口程序截图;hwnd : 句柄;to_clipboard : 是否复制到剪贴板; |
SavePic(savepath=None, filename=None) | 保存截图;savepath:文件保存位置;filename:文件名字; |
ControlSize(control) | 获取控制窗口大小; |
ClipboardFormats(unit=0, *units) | 获取剪切板格式 ; |
CopyDict() |
WeChat类下面定义调用微信的函数:
函数 | 说明 |
---|---|
GetSessionList(self, reset=False) | 获取当前会话列表,更新会话列表 |
Search(self, keyword) | 查找微信好友或关键词;keywords: 要查找的关键词,最好完整匹配,不完全匹配只会选取搜索框第一个; |
ChatWith(self, who, RollTimes=None) | 打开某个聊天框;who : 要打开聊天框的好友名,最好完整匹配,不完全匹配只会选取搜索框第一个;RollTimes : 默认向下滚动次数,再进行搜索; |
SendMsg(self, msg, clear=True) | 向当前窗口发送消息;msg : 要发送的消息; |
SendFiles(self, *filepath, not_exists=‘ignore’) | 向当前聊天窗口发送文件;not_exists: 如果未找到指定文件,继续或终止程序;*filepath: 要复制文件的绝对路径; |
SendClipboard(self) | 向当前聊天页面发送剪贴板复制的内容; |
GetAllMessage(self) | 获取当前窗口中加载的所有聊天记录; |
GetLastMessage(self) | 获取当前窗口中最后一条聊天记录 |
LoadMoreMessage(self, n=0.1) | 定位到当前聊天页面,并往上滚动鼠标滚轮,加载更多聊天记录到内存发送某个桌面程序的截图,如:微信、记事本;name : 要发送的桌面程序名字;classname : 要发送的桌面程序类别名; |
SendScreenshot(self, name=None, classname=None) | 发送某个桌面程序的截图,如:微信、记事本;name : 要发送的桌面程序名字;classname : 要发送的桌面程序类别名; |
wxauto库信息:
Author: tikic@qq.com
Source: https://github.com/cluic/wxauto
Version: 3.3.5.3
[Python] 微信for PC自动群发消息、图片以及文件相关推荐
- vuewebsocket做消息提醒_企业微信群怎么定时群发消息?如何突破群发次数限制?...
文丨语鹦企服私域管家原创,未经授权不得转载 我们在使用企业微信做营销时,经常需要给客户群发通知或活动福利.企业微信提供多客户群群发工具,只需一键群发,即可通知到所有群.但遇上节假日或者忙碌的时候,定时 ...
- 网页版微信自动群发消息
操作步骤: 登陆网页版微信 打开开发者工具 打开 console 控制台 粘贴一下代码到控制台并回车 实现原理 遍历好友列表 修改输入框文本 点击发送 // 拿到所有聊天对象(仅限当前网页上展示的内容 ...
- python微信机器人pc端
相信很多玩python的都知道,以前有个第三方库可以操作微信,实现自动回复等等功能,其原理是用https进行通信的, 但是现在大部分微信都不能登录网页版了,很多好玩的项目都受到了影响.因此,我来了. ...
- 飞书自动发送消息-自动群发消息
需求: 想通过飞书,定时发送自定义消息给指定的人员或者所有人员.自定义消息可以是文字,图片或音视频. 解决思路: 在飞书创建一个类似微信公众号一样的群发工具 在这个群发工具后台配置功能,获取相关的秘钥 ...
- 微信公众号无限群发消息 v5.7.1 多功能版全开源 + 配置教程
简介: 公众号无限群发消息模块,为运营而生 1.关于普通版与多功能版区别: 普通版:只能发文字,每次只能发500人,多了会卡死,需要再选下五百人(且不再更新). 多功能版:支持TD退订功能(用户发送t ...
- QQ、微信、lol自动发消息工具
写了一个电脑自动发消息的工具,脱离双手,让我们聊天更方便跟简洁! 电脑软件. 自动发消息,双手离开键盘!能设置次数和发送间隔. 链接在这:阿里云盘分享提取码:51ar 一定要先看使用教 ...
- 微信公众平台 高级群发消息接口使用方法
在这篇微信公众平台高级接口开发教程中,我们将介绍如何使用接口实现微信公众平台群发功能. 本文分为以下四个部分: 准备群发内容 选择群发对象 执行群发 接收群发结果 一.准备群发内容 群发内容可以是文本 ...
- Java+Python 微信公众号自动给女朋友推送专属浪漫早安问候
目录结构 前言 0.推送效果 1.自动化平台地址(免费的) 1.1.平台首页 1.2.个人信息注册页面 1.3.成功注册页面 1.4.登录页面 2.注册步骤 2.1.扫码登录 2.2.第二步,复制粘贴 ...
- [石青微博群发软件 v2.1.8.6] 集新浪微博和腾讯微博为一体的营销工具+自动群发消息
介绍 石青微博群发软件是一款集新浪微博.腾讯微博为一体的营销工具,几乎涵盖了所有微博营销和推广手法,是网络推广者不可多得的工具. 本软件是一款全自动的微博群发工具,包含群发.超话.私信.评论.留言.转 ...
- Python微信操控itchat定时发送消息
前言 itchat是一个开源的个人微信接口,利用itchat可以实现例如微信自动回复,定时发送信息.详细可查看itchat项目文档,这里我只介绍一些简单的操作,并用10行代码完成定时发送消息. 安装 ...
最新文章
- 面向技术编程,面向工资编程,面向用户编程?
- Shell-bash
- java io流屏幕输出_java IO流 之 输出流 OutputString()的使用
- dw写出来的php乱码,解决DW中的乱码问题
- webbrowser 访问iframe拒绝访问_电脑无法删除文件访问被拒绝【解决方案】
- maven 排除某个类_java-如何从Maven依赖项中排除某些程序包(在JAR中)?
- 框架自主搭建bitnami.com
- 2018年将会改变人工智能的5个大数据趋势
- 指数基金投资指南 笔记
- sass、vue(v-model、v-text、v-html、v-for、v-if、v-show、v-on、修饰符)
- 基于安卓的掌上二手图书交易app
- 微信小程序开发记录2——获取openid失败
- Java中4大基本加密算法解析
- openlayers 地图上加图标_Openlayers 定位,添加自定义图标,点击图标弹框
- java如何开发游戏大厅_java仿qq游戏大厅的设计与实现
- Mac上如何利用itunes恢复存放在移动硬盘的iPhone数据
- 关于华为的高薪和华为的加班
- php中fread用法,php fread()函数用法示例
- 智能配线系统技术高峰论坛PPT讲座主要内容
- parsing restarts here after previous syntax error错误
热门文章
- 安装webpack上
- 如何把pdf拆分成多个文件?
- Docker 2375 端口入侵服务器,部分解决方案
- 【券后价16.80元】【海蓝蓝】夹心海苔脆芝麻海苔即食罐装海苔宝宝辅食儿童零食40克...
- 玩转群晖NAS套件系列三:Video Station安装使用保姆级教程!
- Arduino使用433MHz RF射频发射器和接收器的方法
- 39岁java程序员,失业中,看不到希望,很迷茫,路在何方?
- 把桌面路径改到D盘,忘记新建文件夹,D盘所有文件跑到桌面怎么办?
- Win11修改用户名(超详细图文)
- 中国芝麻市场竞争规模及销售渠道分析报告2022-2028年版