一、背景说明
前几天,大全老师和我说:他每次在陪伴群做图文分享内容的时候,很麻烦,也很费时,
一个群还好,假如是批量分享多个群即使有cv大法,估计手也酸,时间都花在这上面了...
让我看能不能用RPA做一个微信自动图文分享的机器人,解放双手,说不定以后自己也能派上用场。
于是就直接肝了!!!
二、需求分析
微信自动图文分享有两种场景:
-
纯文本
按照文本的顺序,一行一行文字发送到微信群聊
-
图文本
发送文本的过程中,会交叉携带一些图片并发送
三、流程拆解
1、纯文本
1)提前准备好分享的文本内容
2)找到要分享的微信群聊
3)一行一行粘贴复制到对话框
4)最后点击发送
5)定时2秒,然后继续发送下一条信息(定时时长可设置)
RPA流程图:
2、图文本
1) 提前准备好分享的文本内容和图片
2) 找到要分享的微信群聊
3) 一行一行粘贴复制到对话框
4) 点击发送文本
5)判断是否需要发送图片
6) 点击发送文件
7)选中图片
8)发送图片
9)定时2秒,然后继续发送下一条信息(定时时长可设置)
RPA流程图:
与纯文本流程差异的地方
图片需要提前存储到某个文件夹下,然后分多个文件夹存储,用数字索引命名 1 2 3 4 .....
为什么要这样存?
发送图文内容,不是每条文本都需要携带图片发送的,
有可能只是其中几条文本信息,需要携带图片一起发送,
这样命名是为了方便文本信息,关联到需要发送的图片集。
数字索引文件名字法,代表是第几条文本需要携带图片
1:第一条文本信息,需要携带图片发送
2:第二条文本信息,需要携带图片发送
3:第三条文本信息,需要携带图片发送
.......
99:第99条文本信息,需要携带图片发送
以此类推...
假设我的文件路径是:D:/pic/rpa/
那么文件路径就是固定的,只有后面的数字索引会变动
D:/pic/rpa/1
D:/pic/rpa/2
D:/pic/rpa/3
......
如果在我发送第三条文本的时候,需要携带图片,那么根据文件固定路径+拼接数字索引
结果是 D:/pic/rpa/3 ,就可以找到对应的图片集了
四、搭建RPA
1、纯文本(流程搭建步骤)
1) 准备数据表格内容
2) 获取窗口对象
3) 点击微信聊天界面
4) 点击微信搜索框
5) 输入搜索微信名
6) 回车确认聊天框
7) 读取数据表格内容列表
8) 循环列表内容
9) 设置剪切版内容
10)模拟键盘操作 粘贴
11)回车发送
12)等待1秒继续下一条信息发送(时长可自己设置)
2、图文本(流程搭建步骤)
图文本的前半部分流程和纯文本的流程是一模一样的,只是在文本发送之后
增加了一块逻辑判断,是否需要发送图片的判断。
流程搭建步骤:
1)根据循环文本列表索引判断,是否需要携带图片发送
循环的索引,可以根据循环列表获取到,loop_item_index
这里的数字[21,22,23....],是跟着文件命名关联的,一一对应
2)点击微信发送文件
3)点击文件搜索框
4)输入文件路径
5)回车确认(跳转到对应文件夹)
6)光标聚焦到文件夹窗口
7)模拟键盘操作 全部选中
8)点击文件对话框=>打开按钮
9)回车确认发送图片
五、遇到的问题
1、使用影刀的打开文件夹的问题
打开的文件夹窗口会被微信窗口遮挡到,会导致元素捕获不到。。。
选择不了图片,不知道是什么原因,每次打开文件夹,都被微信窗口置顶了
解决方案
使用微信的发送文件窗口
这种方式,弹出的对话框会自动聚焦到文件名搜索框,可以直接输入文件路径搜索
2、捕获元素的问题
在选择图片文件的时候,弹出的窗口,有可能是选择一张图片,有可能是多张
所以就不可能一张张图片去点击,可以利用ctrl+a 全部选中
前提是鼠标光标要聚焦在框框内。
原先我的逻辑是这样:
用捕获元素去捕获任意一张图片(光标聚焦),但每次打开的图片都不一样,会导致元素捕获不到。。。
解决方案
模拟鼠标移动
把鼠标光标移动到聚焦的范围内,然后模拟鼠标点击一下,就可以全部选中照片了。
以上就是用RPA 实现微信图文分享的整个流程。有更好建议的朋友欢迎和我沟通!
希望能帮到有需要的朋友们,提前避坑,少走弯路!
我是小楠,对RPA感兴趣的,可以联系我一起交流,一起学习!