影刀RPA_批量添加用户至企业微信_源码解读

一、项目简介

本项目是一个基于影刀RPA(Robotic Process Automation)开发的自动化工具,主要功能是通过手机号码批量添加用户至企业微信。项目利用企业微信客户端自动化操作,实现了从手机号导入、去重处理到批量发送好友请求的全流程自动化。

项目特点:

  • 支持通过数据表格或Excel导入手机号
  • 自动去重和格式清洗
  • 企业微信窗口自动化控制
  • 操作结果分类统计与导出影刀RPA_批量添加用户至企业微信_源码解读_第1张图片

二、项目结构

影刀RPA_批量添加用户至企业微信_源码解读_第2张图片

xbot_robot/
├── .dev/                 # 开发环境配置文件
│   ├── icon/             # 应用图标
│   ├── screenshot/       # 截图资源
│   └── *.flow.json       # 流程配置文件
├── __pycache__/          # Python编译缓存
├── resources/            # 图像资源库
├── main.py               # 程序入口
├── package.py            # 包管理与全局变量
├── package.json          # 项目元数据
├── settings.json         # 应用设置
├── utils.py              # 工具函数库
├── process*.py           # 各流程模块
└── README.md             # 项目说明文档

主要文件说明:

  • main.py: 程序入口,按顺序调用各流程模块
  • package.py: 提供选择器、资源访问和全局变量管理
  • utils.py: 包含进程管理、版本检查等通用工具函数
  • process.py*: 各功能模块,如process15(配置)、process12(数据处理)、process2(窗口控制)等
  • package.json: 项目元数据、流程定义和变量配置

三、项目特点和核心代码

1. 多流程模块化设计

项目采用模块化设计,将不同功能拆分为独立流程:

# main.py 中的流程调用示例
def main(args):
    try:
        _ = xbot_visual.process.run(process="process15", package=__name__, inputs={}, outputs=[], _block=("main", 1, "调用流程"))
        _ = xbot_visual.process.run(process="process12", package=__name__, inputs={}, outputs=[], _block=("main", 2, "调用流程"))
        _ = xbot_visual.process.run(process="process2", package=__name__, inputs={}, outputs=[], _block=("main", 3, "调用流程"))
        # ... 其他流程调用
    finally:
        pass

2. 数据处理与去重

process12.py实现了手机号数据的读取和清洗:

# 从数据表格读取手机号并去重
def main(args):
    try:
        user_phones_list = xbot_visual.programing.databook.read_data_from_workbook(read_way="column", column_column_name="A", _block=("A 获取客户手机号码并去重去空格", 3, "读取数据表格内容"))
        user_phones_list = xbot_visual.list.remove_list(lst1=user_phones_list, lst2=lambda: [None], _block=("A 获取客户手机号码并去重去空格", 4, "过滤列表中的多项"))
        xbot_visual.list.remove_duplicate(lst=user_phones_list, _block=("A 获取客户手机号码并去重去空格", 5, "列表去重"))
        # ... 写入处理后的数据
    finally:
        pass

3. 企业微信自动化控制

process2.py负责确保企业微信正确启动并检查版本:

# 企业微信窗口检查
def main(args):
    try:
        while True:
            try:
                software_window = xbot_visual.win32.window.get(title="企业微信", _block=("B1 确保企业微信已启动,窗口已打开", 3, "获取窗口对象"))
                return
            except Exception as exception:
                xbot_visual.dialog.show_message_box(title="未打开企业微信", message="请在电脑端打开您的企业微信,并弹出窗口", buttons="确定", _block=("B1 确保企业微信已启动,窗口已打开", 7, "打开信息对话框"))
    finally:
        pass

4. 结果统计与输出

process13.py实现添加结果的分类统计:

# 结果数据写入
def main(args):
    try:
        xbot_visual.programing.databook.write_data_to_workbook(write_range="column", column_name="A", content=package.variables['send_success_list'], _block=("E1 结果保存至数据表格", 3, "写入内容至数据表格"))
        xbot_visual.programing.databook.write_data_to_workbook(write_range="column", column_name="B", content=package.variables['send_fail_list'], _block=("E1 结果保存至数据表格", 4, "写入内容至数据表格"))
        xbot_visual.programing.databook.write_data_to_workbook(write_range="column", column_name="C", content=package.variables['send_already_list'], _block=("E1 结果保存至数据表格", 5, "写入内容至数据表格"))
    finally:
        pass

四、适用场景

  1. 企业客户批量导入:适用于需要将大量客户手机号导入企业微信的销售或客服团队
  2. 营销活动推广:新客户批量添加,用于产品推广或活动通知
  3. 客户关系管理:将现有客户资料批量迁移至企业微信进行统一管理
  4. 团队协作:企业内部员工批量添加,简化新员工入职流程

使用限制:

  • 单个企业微信账号每日添加好友上限为200人
  • 需确保企业微信客户端已安装并登录
  • 建议屏幕分辨率为标准比例(100%缩放)

五、常见问题与建议

常见问题

  1. 无法找到企业微信窗口

    • 确保企业微信已启动并登录
    • 检查窗口标题是否为"企业微信"
    • 尝试重启企业微信
  2. 添加失败或无响应

    • 检查企业微信版本是否兼容(通过process19.py验证)
    • 确认网络连接正常
    • 检查是否已达到每日添加上限
  3. 分辨率问题

    • 部分高分辨率屏幕可能导致界面识别失败
    • 建议将系统显示缩放设置为100%

使用建议

  1. 分批添加:每次添加不超过200个号码,避免触发限制
  2. 数据预处理:提前清洗手机号数据,确保格式正确
  3. 定期更新:保持企业微信客户端为最新版本
  4. 错误监控:关注日志输出,及时发现处理异常情况

六、源码下载

  1. 通过影刀RPA客户端应用市场获取。
  2. 私聊

七、后续扩展方向

  1. Excel导入导出功能:支持直接读取Excel文件并导出详细报告
  2. 多账号轮换:实现多账号自动切换,突破单账号添加限制
  3. 智能验证:增加手机号格式验证和有效性检查
  4. 异常重试机制:对添加失败的号码进行自动重试
  5. UI优化:改进用户交互界面,提供更丰富的配置选项
  6. 定时任务:支持设置定时执行,实现无人值守
  7. API模式:提供HTTP接口,支持与其他系统集成

你可能感兴趣的:(影刀,python,开发语言,影刀,rpa,企业微信,自动化)