Python凭借丰富的标准库和第三方生态,成为实现日常任务自动化批量处理的首选工具,能够覆盖文件操作、数据处理、网络请求等多个常见场景,大幅降低重复劳动成本。

核心思路与常用模块
自动化批量处理的核心逻辑可以总结为三个步骤:遍历目标对象、对每个对象执行预设操作、输出处理结果。Python内置的多个模块可以直接支撑这个流程,常见的模块如下:
- os模块:用于文件和目录的遍历、重命名、删除等操作
- shutil模块:用于文件的复制、移动、压缩等高级文件操作
- openpyxl模块:用于批量处理Excel表格数据
- requests模块:用于批量发送网络请求、爬取数据
实战示例一:批量重命名文件
假设我们需要将某个目录下的所有jpg图片统一添加前缀,就可以使用os模块快速实现,代码如下:
import os
# 目标目录路径
target_dir = "./images"
# 遍历目录下的所有文件
for filename in os.listdir(target_dir):
# 判断文件是否为jpg格式
if filename.endswith(".jpg"):
# 拼接旧路径和新路径
old_path = os.path.join(target_dir, filename)
new_filename = "new_" + filename
new_path = os.path.join(target_dir, new_filename)
# 执行重命名操作
os.rename(old_path, new_path)
print(f"已将{filename}重命名为{new_filename}")
实战示例二:批量处理Excel数据
如果需要批量读取多个Excel文件,提取指定列的数据并汇总,可以使用openpyxl模块实现,代码如下:
import os
from openpyxl import load_workbook
# 汇总结果列表
result_data = []
# 目标Excel文件目录
excel_dir = "./excels"
# 遍历目录下的所有Excel文件
for filename in os.listdir(excel_dir):
if filename.endswith(".xlsx"):
file_path = os.path.join(excel_dir, filename)
# 加载工作簿
wb = load_workbook(file_path)
# 获取第一个工作表
ws = wb.active
# 遍历工作表第二行开始的数据,提取第一列和第二列
for row in ws.iter_rows(min_row=2, values_only=True):
name = row[0]
score = row[1]
if name and score:
result_data.append([filename, name, score])
wb.close()
# 打印汇总结果
for item in result_data:
print(item)
实战示例三:批量发送HTTP请求
如果需要批量向某个接口提交数据,可以使用requests模块实现,代码如下:
import requests
# 待提交的参数列表
param_list = [
{"id": 1, "content": "测试内容1"},
{"id": 2, "content": "测试内容2"},
{"id": 3, "content": "测试内容3"}
]
# 接口地址
api_url = "http://127.0.0.1:8080/submit"
# 遍历参数列表发送请求
for param in param_list:
try:
response = requests.post(api_url, json=param, timeout=5)
if response.status_code == 200:
print(f"参数{param}提交成功")
else:
print(f"参数{param}提交失败,状态码:{response.status_code}")
except Exception as e:
print(f"参数{param}请求异常:{e}")
注意事项
编写自动化批量处理脚本时,需要注意以下几点:
- 操作前建议先备份原始数据,避免误操作导致数据丢失
- 批量操作前可以先小范围测试,确认逻辑正确后再全量执行
- 对于耗时较长的批量任务,可以添加进度提示和异常捕获逻辑,方便排查问题
- 如果处理的是敏感数据,需要注意数据安全和隐私保护