本文实现的是一种较为安全、简洁、高效的抓取微信好友信息的方法。
实现工具:微信pc端、影刀RPA
主要流程:
手动—前期准备,电脑登陆微信,打开联系人页,使得联系人分类“A”显现在微信窗口界面
自动—运行程序:
- 利用元素的文本定位到“A”文本框,获取其底部坐标;
- 坐标Y轴向下偏移,鼠标左键单击,右边显示出联系人详情(一般是0~60像素,具体范围可利用截图工具获取联系人文本框的高度);
- 在详情页获取联系人的信息;
- 获取完一个联系人信息后,将获取到的信息写入到数据表格中;
- 通过快捷键指令控制键盘“↓”键,单击,跳转下一个联系人详情页,重复3、4步骤;
- 通过判断最新抓取的联系人信息和数据表格中的信息是否一致,决定是否跳出循环抓取流程
- 待抓取完联系人信息后将数据表格导出Excel表格储存。
完整程序截图:
抓取后的数据如下:
关键步骤总结:
- 性别男、女、无,通过联系人右边的性别标识图像判断;
- 由于微信的联系人是可以备注重复的,所以在判断是否抓取到最后一位时,不能通过简单的联系人字符判断,要多条件判断,文中是将所有字段拼接成字符再判断;
- 由于联系人详情页有些信息不一定有,比如地区,典型如企业微信联系人、官方助手等等,这时,就要增加异常判断或者超时判断,文中是忽略抓取,将这些不存在信息设为“无”;
- 为了提高抓取效率,文中是抓取相似元素后再处理字符列表,根据详情页的标签:昵称、微信号、地区,定位列表中的联系人信息(标签索引+1)