影刀RPA新手教程_文件批量处理操作指南
·
影刀RPA新手教程:文件批量处理操作指南——遍历文件夹、改名、移动与复制
做自动化,迟早要和文件打交道。
采集的数据保存在一堆CSV里需要合并、日志文件该删了、命名不规范要统一改。

影刀的文件处理指令不复杂,但操作组合起来会了能省大量时间。
一、遍历文件夹里的所有文件
右侧指令面板搜索"遍历文件夹",拖到画布。配置两个参数:

- 文件夹路径:要扫描的目录
- 文件类型:
*.*表示所有文件,*.xlsx表示只要Excel,*.csv只要CSV
遍历文件夹("D:\\数据\\日报\\", "*.xlsx") -> 文件路径列表
遍历列表(文件路径列表, 文件路径):
文件名称 = 获取文件名(文件路径)
输出日志(f"处理中: {文件名称}")
# 你的业务逻辑
读取Excel(文件路径) -> 表格
# ...
也可包含子文件夹:
店群矩阵自动化突破运营极限!
# 如果有"递归"选项,勾选后会进入子文件夹
遍历文件夹("D:\\数据\\", "*.*", 递归=True)
二、文件改名
文件路径 = "D:\\数据\\20260609_日报.xlsx"
新路径 = "D:\\数据\\日报_2026年6月9日.xlsx"
重命名文件(文件路径, 新路径)
批量改名:

遍历文件夹("D:\\照片\\", "*.jpg") -> 文件列表
遍历列表(文件列表, 文件路径, 索引):
新文件名 = f"照片_{索引 + 1:03d}.jpg"
新路径 = f"D:\\照片\\已整理\\{新文件名}"
复制文件(文件路径, 新路径) # 复制到整理目录,不改原文件
索引 + 1:03d 的意思是:从1开始编号,不足3位的补零(001, 002, …, 099, 100)。
三、文件移动

# 把昨天的日报移到归档文件夹
源文件 = f"D:\\数据\\日报\\日报_{昨天日期}.xlsx"
目标 = f"D:\\数据\\归档\\2026年\\6月\\日报_{昨天日期}.xlsx"
# 先确保目标目录存在
创建文件夹("D:\\数据\\归档\\2026年\\6月")
移动文件(源文件, 目标)
按文件类型分类移动:
遍历文件夹("D:\\下载\\", "*.*") -> 文件列表
遍历列表(文件列表, 文件路径):
扩展名 = 获取文件扩展名(文件路径) # ".xlsx"
如果 扩展名 == ".xlsx":
移动文件(文件路径, f"D:\\整理\\Excel\\{获取文件名(文件路径)}")
否则如果 扩展名 == ".csv":
移动文件(文件路径, f"D:\\整理\\CSV\\{获取文件名(文件路径)}")
否则如果 扩展名 属于 [".jpg", ".png", ".gif"]:
移动文件(文件路径, f"D:\\整理\\图片\\{获取文件名(文件路径)}")

四、文件删除与清理
删除单个文件
删除文件("D:\\temp\\无用文件.txt")
批量清理旧文件

# 删除7天前的日志
遍历文件夹("D:\\日志\\", "*.log") -> 文件列表
遍历列表(文件列表, 文件路径):
修改时间 = 获取文件修改时间(文件路径)
当前时间 = datetime.now()
如果 (当前时间 - 修改时间).days > 7:
删除文件(文件路径)
输出日志(f"已删除过期文件: {获取文件名(文件路径)}")
⚠️ 注意:删除操作不可逆。建议测试时先改成"移动到回收站"(如果有这个指令的话),或者先输出日志确认要删的文件列表,再执行删除。
temu店群自动化报活动案例

五、检查文件是否存在
如果 文件存在("D:\\数据\\数据源.csv"):
读取CSV("D:\\数据\\数据源.csv")
else:
输出日志("数据源文件不存在,跳过")
六、综合实战:每日数据整理脚本

# 子流程:F_每日数据整理
来源目录 = "D:\\下载\\"
Excel目标 = "D:\\数据\\Excel\\"
CSV目标 = "D:\\数据\\CSV\\"
# 1. 确保目标目录存在
创建文件夹(Excel目标)
创建文件夹(CSV目标)
# 2. 遍历下载目录
遍历文件夹(来源目录, "*.*") -> 文件列表
Excel计数 = 0
CSV计数 = 0
遍历列表(文件列表, 文件路径):
扩展名 = 获取文件扩展名(文件路径).lower()
文件名 = 获取文件名(文件路径)
如果 扩展名 == ".xlsx":
移动文件(文件路径, Excel目标 + 文件名)
Excel计数 += 1
否则如果 扩展名 == ".csv":
移动文件(文件路径, CSV目标 + 文件名)
CSV计数 += 1
# 3. 汇总通知
输出日志(f"整理完成!Excel文件{Excel计数}个,CSV文件{CSV计数}个")
# 4. 合并所有Excel(可选)
如果 Excel计数 > 1:
# 用Pandas合并所有Excel文件
Python代码:
import pandas as pd
import glob
files = glob.glob("D:\\数据\\Excel\\*.xlsx")
dfs = [pd.read_excel(f) for f in files]
merged = pd.concat(dfs, ignore_index=True)
merged.to_excel("D:\\数据\\Excel\\合并汇总.xlsx", index=False)
print(f"已合并{len(files)}个Excel文件")
七、一个实用的批量创建文件夹脚本
有些自动化需要为每个店铺创建独立文件夹:

店铺名列表 = ["店铺A", "店铺B", "店铺C", "店铺D"]
遍历列表(店铺名列表, 店铺名):
路径 = f"D:\\店铺数据\\{店铺名}"
如果 非 文件存在(路径):
创建文件夹(路径)
输出日志(f"创建文件夹: {路径}")
把"创建必要目录"放在流程开头,避免后面写到路径时因为目标文件夹不存在而报错。
作者:林焱
本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。
更多推荐

所有评论(0)