|
1.微信群发消息方式
1.微信官方“群消息助手”
优点:这个功能确实很方便
缺点:每次只能发送一条消息
您发送的内容不能包含链接
无法为群组消息中的每个人设置姓名
聊天窗口栏中不显示“发送完成”信息
群发消息时,图片和文件经常无法送达且没有未送达提醒
2. wxpy
这是一个非常强大的第三方库。
但目前由于安全问题,大部分用户都面临TX对很多用户限制了网页版微信的登录,导致库无法正常使用的问题。错误信息:
3、另外还有微信机器人和支付平台,这里就不推广了。
4.第三方库
综合考虑,上面找到了tikic发布的第三方库,不可否认它的速度不如其他的,开发的人也不多,但是基本满足了我对微信自动化的需求,期待后续的完善。
2.安装方法
<p><pre> <code>pip install wxauto</code></pre></p>
3. 我的案例
如果想通知所有人一些消息,并且确保他们能够收到,创建新群组当然是快捷方便的。但对于社交犹豫的人来说,创建和解散群组还是会给接收消息的人带来不少社交困扰,而且需要通知的人经常会发生变化。
使用它向好友发送消息(包括链接)、二维码图片和文件。并在发送消息前添加不同好友的姓名:
<p><pre> <code>from wxauto import WeChat
import time, random
wx = 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-20s
wx.ChatWith(who) # 打开聊天窗口
# wx.Search(who) # 查找微信好友,不会在当前聊天栏滚动查找
wx.SendMsg(message)
wx.SendFiles(file1, fele2) # 可发送多个文件
print("end send", i[0])
print("All end send")
</code></pre></p>
4. 图书馆的功能组织
目前分为三类:
其中设置了基本参数设置。
主要函数存储在类下:
功能描述
(data, dtype='text')复制文本信息或图片到剪贴板data:需要复制的内容,str或者Image图像;
(hwnd, =True)是否对具有句柄hwnd的窗口程序进行截图;hwnd:句柄;:是否复制到剪贴板;
(=无, =无)保存截图;:文件保存位置;:文件名;
() 获取控件窗口大小;
(unit=0, *units)获取剪贴板格式;
()
调用微信的函数定义在类下面:
功能描述
(self, reset=False)获取当前会话列表,并更新会话列表
(self, )搜索微信好友或关键字;:搜索的关键字最好完全匹配,若不完全匹配则只选择搜索框中第一个;
(self, who, =None)打开聊天框;who:要打开聊天框的好友名字,最好完全匹配,如果完全匹配则只选择搜索框中的第一个; :搜索前默认向下滚动的次数;
(self, msg, clear=True)向当前窗口发送消息;msg:要发送的消息;
(self, *, ='') 发送文件到当前聊天窗口;:如果未找到指定的文件,则继续终止程序;*:要复制的文件的绝对路径;
(self) 将从剪贴板复制的内容发送到当前聊天页面;
(self) 获取当前窗口加载的所有聊天记录;
(self) 获取当前窗口最后一条聊天记录
(self, n=0.1) 定位到当前聊天页面,向上滚动鼠标滚轮,加载更多聊天记录到内存中。发送桌面程序截图,如微信、记事本;name:需要发送的桌面程序名称; :需要发送的桌面程序类别名称;
(self, name=None, =None)发送桌面程序的截图,例如微信、记事本;name:需要发送的桌面程序的名称;:需要发送的桌面程序的类别名称;
原文链接: |
|