影刀RPA新手教程_从零搭建通用数据采集系统配置表驱动框架
影刀RPA新手教程从零搭建数据采集系统——配置表驱动的通用采集框架很多新手做自动化的第一反应是给每个需求单独写一个流程。一周后就有5个流程一个月后20个。每个流程里打开网页→搜索→翻页→写Excel这串逻辑几乎一模一样但你写了20遍。换个思路不是给需求写流程而是搭一个通用的采集框架换个配置表就能采不同的网站。这篇文章教你搭建一个配置表驱动的通用采集系统。学会之后新需求只要写几行配置不用从零写流程。一、通用采集框架的设计思路先看一个典型的采集流程做了什么打开网站 → 搜索关键词 → 等待加载 → 遍历商品列表 → 提取数据 → 写入Excel → 翻页 → 重复 → 保存结果这串逻辑里只有两个东西是变化的采集什么网址、关键词、要提取的字段在哪采元素的选择器其他的遍历、翻页、写Excel、异常处理全是一样的。拼多多店群自动化上架方案所以我们的思路是把变化的抽出来做配置表不变的部分写成通用流程。二、配置表结构设计创建一个 Excel 文件作为配置表结构如下Sheet1采集任务配置任务ID平台搜索关键词起始URL最大页数每页等待数据表名TASK001淘宝连衣裙https://…103采集结果TASK002拼多多无线耳机https://…202采集结果| TASK003 | 小红书 | 露营装备 | https://… | 5 | 5 | 采集结果 |Sheet2字段提取配置任务ID字段名选择器类型选择器数据类型清洗规则TASK001商品名XPATH//div […].title文本无TASK001价格XPATH//div […].price数字去¥符号TASK001销量XPATH//div […].sales数字提取数字TASK002商品名XPATH//span […].name文本无TASK002价格CSS.price-text数字去¥符号配置表设计的原则一个任务一条记录方便新增和停用字段提取配置独立出来支持不同平台的字段结构清洗规则用简单的关键字流程内部解析三、通用采集流程的实现# 主流程通用采集引擎主流程():# 1. 读取配置读取Excel(D:\配置\采集配置.xlsx,Sheet任务配置)-任务表 读取Excel(D:\配置\采集配置.xlsx,Sheet字段配置)-字段表# 2. 初始化结果表新建Excel-结果表 写入标题行(结果表,[任务ID,关键词,字段名,字段值,采集时间])# 3. 遍历任务获取表格行数(任务表)-任务总数 遍历行索引(1,任务总数):当前任务ID获取单元格值(任务表,当前行,1)当前平台获取单元格值(任务表,当前行,2)当前关键词获取单元格值(任务表,当前行,3)当前URL获取单元格值(任务表,当前行,4)最大页数获取单元格值(任务表,当前行,5)等待时间获取单元格值(任务表,当前行,6)# 4. 执行单个任务执行单任务(当前任务ID,当前平台,当前关键词,当前URL,最大页数,等待时间,字段表,结果表)# 5. 保存结果导出表格(结果表,fD:\数据\采集结果_{获取当前日期()}.xlsx)单任务执行执行单任务(任务ID,平台,关键词,URL,最大页数,等待时间,字段表,结果表):# 打开搜索页打开网页(URL)等待元素出现(搜索结果列表,10秒)当前页1条件循环(当前页最大页数):# 采集当前页采集单页(任务ID,关键词,字段表,结果表)当前页当前页1如果 当前页最大页数:跳出循环# 翻页判断元素是否存在(下一页按钮)如果 结果为真:点击元素(下一页按钮)等待(等待时间)否则:输出日志(没有下一页提前结束)跳出循环单页采集——从配置表读取字段规则采集单页(任务ID,关键词,字段表,结果表):# 获取商品列表获取相似元素列表(商品卡片)-商品列表 遍历列表(商品列表,当前商品):行号获取下一行号(结果表)# 遍历该任务的所有字段配置遍历表格(字段表,当前字段行):字段任务ID获取单元格值(字段表,当前字段行,1)如果 字段任务ID!任务ID:继续# 跳过其他任务的字段配置字段名获取单元格值(字段表,当前字段行,2)选择器获取单元格值(字段表,当前字段行,4)清洗规则获取单元格值(字段表,当前字段行,6)# 提取字段值字段值获取元素文本(当前商品选择器)# 字段值清洗字段值清洗数据(字段值,清洗规则)# 写入结果写入行数据(结果表,[任务ID,关键词,字段名,字段值,获取当前时间()])四、数据清洗模块化清洗数据(原始值,清洗规则):如果 清洗规则无:返回 原始值 如果 清洗规则去¥符号:返回 替换文本(原始值,¥,)如果 清洗规则提取数字:# 去除所有非数字字符保留小数点importre 结果re.sub(r[^\d.],,原始值)返回 结果 如果 清洗规则去空格:返回 去除首尾空格(原始值)如果 清洗规则去换行:返回 替换文本(原始值,\n, )# 未知规则返回原值返回 原始值五、通用采集框架的优势和传统一个需求一个流程比对比维度传统方式通用框架新增采集任务复制旧流程改URL和选择器在配置表加一行修改采集字段改流程代码改完要测试改配置表即可维护成本每个流程独立维护只维护一个引擎出问题时每个流程逐个排查主引擎加日志一次性解决新人上手需要理解每个流程的代码只需要会填配置表TEMU店群如何管理运营六、实际使用时要注意的问题问题1不同平台的翻页方式不同配置表里加一个翻页方式字段翻页方式做法按钮点击点下一页按钮URL参数pageN拼接滚动加载scroll到底部# 根据翻页方式选择策略如果 翻页方式按钮:点击元素(下一页)elif翻页方式URL:新URL当前URLpageToString(当前页)打开网页(新URL)elif翻页方式滚动:循环(5次):滚动页面(500像素)等待(1秒)问题2个别平台的规则太特殊配置表驱动不是银弹。如果某个平台的页面结构非常特殊通用框架处理不好的时候不要硬套。这时候单独写一个流程配置表里标注特殊处理然后主流程判断如果 任务处理方式标准:执行标准采集(任务ID)elif任务处理方式特殊:执行特殊处理_拼多多(任务ID)七、完整的目录结构建议D:\自动化采集系统\ ├── 主流程.yda # 采集引擎 ├── 配置\ │ ├── 采集配置.xlsx # 任务字段配置 │ ├── 账号配置.xlsx # 各平台登录账号 │ └── 清洗规则.json # 复杂的清洗逻辑 ├── 输出\ │ ├── 采集结果_2026-06-10.xlsx │ └── 采集结果_2026-06-11.xlsx ├── 日志\ │ ├── 运行日志_2026-06-10.csv │ └── 错误截图\ └── 备份\ └── 主流程_2026-06-10.yda内容标签#影刀RPA #数据采集 #通用框架 #配置表驱动 #RPA新手教程作者林焱本文为《影刀RPA学习手册》系列文章之一内容源于实操经验的整理与分享。