影刀RPA完全指南:从单个流程到自动化体系的设计思维
大多数人的自动化之路是这样开始的:
先写了一个"淘宝商品采集",能用。然后加了一个"拼多多商品采集",也能用。后来又加了"数据清洗""飞书推送""每日报表"。
不知不觉,电脑里躺了十几个互不相关的流程。今天这个改一下,明天那个修一下,慢慢就管不过来了。
这不是技术问题,是架构问题。
当你同时维护 5 个以上的流程时,不再是在"写自动化脚本",而是在"管理一个自动化体系"。思维要从"单兵作战"切换到"系统设计"。

一、什么时候需要体系化思维
以下三个信号出现任意一个,就该重新审视你的流程结构了:
信号1:同一个动作写了 N 遍
登录淘宝要写一遍,登录拼多多要写一遍,登录 1688 又要写一遍。这三个登录逻辑其实 80% 一样------打开页面、输入账号密码、点登录、等待跳转。
信号2:改一个地方要改好几个流程
比如飞书 Webhook 地址换了,你得去 5 个流程里逐个改。漏一个就少收到一份通知。

信号3:流程之间互相影响
流程 A 和流程 B 共用同一个 Excel 文件,A 没跑完 B 就开始写,数据乱了。或者流程 A 占着浏览器,流程 B 登录不上去了。
二、体系化的三个核心原则
拼多多店群自动化报活动上架!
原则1:公共能力抽离为子流程
任何在多个地方都会用到的操作,都抽成独立子流程。

python
# 抽离前:每个主流程都写一遍登录
# 淘宝采集流程
打开网页("https://seller.taobao.com")
输入文本("账号框", 账号)
输入文本("密码框", 密码)
点击元素("登录按钮")
# ... 20行重复代码
# 拼多多采集流程
打开网页("https://mms.pinduoduo.com")
输入文本("账号框", 账号)
输入文本("密码框", 密码)
点击元素("登录按钮")
# ... 又 20行重复代码
# === 抽离后 ===
# 子流程:A_淘宝登录
# 输入参数:账号、密码
# 输出参数:登录结果(True/False)
打开网页("https://seller.taobao.com")
等待元素出现("登录页", 10秒)
判断元素是否存在("首页Logo") -> 已登录
如果 已登录:
登录结果 = True
返回
输入文本("账号框", 账号)
输入文本("密码框", 密码)
点击元素("登录按钮")
判断元素是否存在("首页Logo") -> 登录成功
登录结果 = 登录成功
# 主流程:只调用,不重复写
调用子流程("A_淘宝登录", 账号, 密码) -> 登录结果
如果 没有 登录结果:
输出日志("登录失败,跳过")
结束流程
建议的子流程拆分:
| 子流程名 | 功能 | 被哪些主流程调用 |
|---|---|---|
| A_淘宝登录 | 登录淘宝后台 | 淘宝采集、淘宝上架、淘宝报表 |
| A_拼多多登录 | 登录拼多多后台 | 拼多多采集、拼多多报表 |
| B_Cookie维护 | 检测+刷新登录态 | 所有需要登录态的主流程 |
| C_飞书通知 | 统一发飞书消息 | 所有主流程 |
| D_Pandas清洗 | 数据去重/格式化/校验 | 采集类主流程 |
| E_浏览器管理 | 启动/关闭/清理浏览器 | 所有主流程 |
原则2:配置集中管理
所有会变的东西------账号、路径、Webhook、阈值------都放在一个地方。
方案A:Excel 配置表
| 配置项 | 值 | 说明 |
|---|---|---|
| 淘宝账号 | admin@xx.com | |
| 淘宝密码 | *** | 加密存储 |
| 拼多多账号 | xxx | |
| 飞书Webhook | https://... | |
![]() |
| 采集间隔_秒 | 5 | 操作间隔 |
| 最大重试次数 | 3 | |
| 截图保存路径 | D:\截图 | |
python
# 主流程启动时统一读取配置
读取Excel("D:\配置\全局配置.xlsx") -> 全局配置
账号_淘宝 = 获取单元格值(全局配置, 2, 2) # 第2行第2列
采集间隔 = 获取单元格值(全局配置, 6, 2)
截图路径 = 获取单元格值(全局配置, 8, 2)
改配置只需改 Excel,不用动任何流程代码。
方案B:Python JSON 配置文件
python
# config.json
{
"accounts": {
"taobao": {"user": "admin", "pwd": "***"},
"pdd": {"user": "xxx", "pwd": "***"}
},
"feishu_webhook": "https://...",
"interval_seconds": 5,
"max_retries": 3,
"screenshot_dir": "D:\\截图"
}
JSON 方案适合配置项很多且层级复杂的场景。
原则3:流程独立运行,互不干扰
问题场景:流程 A 和流程 B 同时跑,结果都往同一个 Excel 写,数据乱套。

解决方案:
python
# 每个流程写自己的文件,末尾用日期+流程名区分
结果文件 = f"D:\\数据\\{流程名称}_{日期}.xlsx"
# 不要在流程内部直接写死路径
# 而是在配置表里给每个流程配独立路径
浏览器冲突:两个流程同时跑,共享 Chrome 实例会互相干扰。
python
# 为关键流程配置独立的浏览器用户数据目录
# 企���版影刀支持多浏览器实例隔离
如果不支持多实例,就用"错峰执行"------流程 A 08:00 跑,流程 B 08:30 跑。
三、体系架构图

┌─────────────────────────────────────────────────────────┐
│ 全局配置中心 │
│ 账号、路径、Webhook、阈值、间隔时间 │
└────────┬────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ 公共能力层(子流程池) │
│ │
│ A_登录模块 B_Cookie维护 C_飞书通知 D_Pandas清洗 │
│ E_浏览器管理 F_截图 G_文件操作 H_错误处理 │
└────────┬────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ 业务流程层 │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 淘宝采集 │ │ 拼多多采集│ │ 1688采集 │ │ 抖音采集 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 每日报表 │ │ 竞品监控 │ │ 自动上架 │ │ 数据看板 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
└────────┬────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ 调度层 │
│ │
│ 定时任务调度 → 错峰执行 → 失败重试 → 结果通知 │
└─────────────────────────────────────────────────────────┘
四层结构:
- 全局配置中心:一个地方改,所有流程生效
- 公共能力层:登录/通知/清洗/错误处理,写一次到处用
- 业务流程层:只写业务逻辑,调用公共能力
- 调度层:管什么时候跑、跑失败了怎么办
四、分层落地的实操步骤
第1步:盘点现有流程
把所有流程列一张表:

| 流程名 | 做了什么 | 依赖什么 | 输出什么 | 稳定性 |
|---|---|---|---|---|
| 淘宝商品采集 | 搜索→采集→写Excel | 淘宝登录/Cookie | Excel文件 | 70% 偶尔卡死 |
| 拼多多商品采集 | 同上 | 拼多多登录 | Excel文件 | 85% |
| 飞书日报推送 | 读Excel→发飞书 | 飞书Webhook | 飞书消息 | 95% |
第2步:找重复逻辑
扫描整张表,找出来哪些操作在多个流程里出现------登录、发消息、写文件、清数据。这些就是第一批要抽离的子流程。
TEMU店群矩阵自动化运营核价报活动
第3步:抽离一个试试
不要一下子全部重构。先选最常用、最简单的那个公共能力(比如"飞书通知"),抽成子流程。让一两个主流程先调用它。跑稳了再抽下一个。
第4步:建配置中心

把分散在各流程里的账号、路径、Webhook 都移到配置 Excel/JSON 里。所有流程统一读取。
第5步:排调度表
python
# 调度计划
# 08:00 - 淘宝商品采集
# 08:30 - 拼多多商品采集
# 09:00 - 1688商品采集
# 09:30 - 数据清洗与汇总
# 10:00 - 每日看板推送
每个流程之间留 30 分钟缓冲,不怕一个慢了影响下一个。
五、只有 3 个流程要不要搞这套?
要,但要轻量。

只有 3 个流程时,不用建完整的四层架构。做两件事就够:
- 建一个配置 Excel------把所有可能以后会变的参数集中起来
- 把登录抽成子流程------这是第一个一定会复用的东西
等流程数量到 5~8 个时,再逐步把飞书通知、数据清洗、错误处理抽出来。
六、体系化的收益
做了体系化之后,日常运维的感受完全不一样:
-
加新平台:不用从头写,调用现有登录子流程 + 通知子流程,只写"这个平台独特"的采集逻辑
-
改 Webhook:改配置表一行,所有流程自动生效
-
排查问题:子流程有独立日志,一眼看出是登录失败还是采集失败
-

-
交接给别人:结构清晰,不用对着十几个平铺的流程文件无从下手
作者:林焱
本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。
