实战

用 Claude Code 写 Python 脚本:自动化日常任务的 8 个实用场景

用 Claude Code 编写 Python 自动化脚本实战:8 个高频场景(文件批处理/Excel 处理/API 调用/定时任务/数据清洗/发送通知/Web 爬取/PDF 处理),每个场景给出完整 Prompt 模板和代码结构。

2026/3/144分钟 阅读ClaudeEagle

Claude Code 最擅长的事情之一就是写 Python 脚本。你描述需求,它帮你搞定所有细节——错误处理、日志、命令行参数、进度条。本文整理 8 个最实用的自动化场景,每个给出完整 Prompt 模板。

通用 Prompt 模板

每次让 Claude 写脚本,加上这几点效果最好:

写一个 Python 脚本,功能是 [描述需求]。 要求: - 用 argparse 接收命令行参数 - 用 logging 记录日志(INFO 级别) - 有完善的错误处理(try/except) - 关键步骤有进度提示 - 运行示例:python script.py [参数示例]

场景 1:批量重命名文件

写一个 Python 脚本批量重命名文件: - 扫描指定目录下所有 .jpg 文件 - 按创建时间排序,命名为 photo_001.jpg, photo_002.jpg... - 支持 --dry-run 参数预览不实际执行 - 支持 --prefix 自定义前缀 - 输出重命名日志
python
# Claude 生成的核心代码结构
import argparse, logging, os
from pathlib import Path
from datetime import datetime

def rename_files(directory, prefix, dry_run):
    files = sorted(Path(directory).glob('*.jpg'), key=lambda f: f.stat().st_ctime)
    for i, f in enumerate(files, 1):
        new_name = f.parent / f'{prefix}_{i:03d}{f.suffix}'
        logging.info(f'{f.name} -> {new_name.name}')
        if not dry_run:
            f.rename(new_name)

场景 2:Excel 数据处理

写一个 Python 脚本处理 Excel 文件: - 读取 data.xlsx,合并 Sheet1 和 Sheet2 - 按日期列排序,删除重复行(根据订单ID去重) - 计算每月销售额汇总,新增 monthly_total 列 - 输出到 output.xlsx,格式化表头(加粗+蓝色背景) - 依赖:openpyxl 或 pandas
python
import pandas as pd

def process_excel(input_file, output_file):
    df1 = pd.read_excel(input_file, sheet_name='Sheet1')
    df2 = pd.read_excel(input_file, sheet_name='Sheet2')
    df = pd.concat([df1, df2]).drop_duplicates(subset='order_id')
    df = df.sort_values('date')
    df['month'] = pd.to_datetime(df['date']).dt.to_period('M')
    df.to_excel(output_file, index=False)

场景 3:调用 REST API 并保存结果

写一个 Python 脚本定期拉取 GitHub API 数据: - 获取指定 repo 的所有 Issues(分页处理) - 过滤 label='bug' 且 state='open' 的 issues - 保存到 bugs.json 和 bugs.csv 两种格式 - 支持 --token 参数传 GitHub Token - 请求失败时重试 3 次,间隔 5 秒
python
import requests, time, json

def fetch_with_retry(url, headers, max_retries=3):
    for attempt in range(max_retries):
        try:
            r = requests.get(url, headers=headers, timeout=10)
            r.raise_for_status()
            return r.json()
        except requests.RequestException as e:
            if attempt == max_retries - 1:
                raise
            time.sleep(5)

场景 4:定时任务(带状态持久化)

写一个 Python 脚本实现定时检查任务: - 每隔 10 分钟检查一个 URL 是否可访问 - 记录最近 24 小时的可用率 - 失败时通过 requests 发送 webhook 通知(钉钉/飞书格式) - 状态持久化到 state.json(重启后继续记录) - 后台运行不阻塞终端

场景 5:数据清洗脚本

写一个 Python 数据清洗脚本: - 读取 CSV 文件(可能有各种编码问题,自动检测) - 清理规则:去首尾空格、统一日期格式为 YYYY-MM-DD、 手机号标准化为 +86 格式、去除明显异常值(如负数价格) - 输出清洗报告:共处理多少行、修改了多少行、删除了多少行 - 生成 cleaned.csv 和 cleaning_report.txt

场景 6:发送通知消息

写一个 Python 脚本发送飞书通知: - 支持发送普通文本、Markdown 富文本、卡片消息 - 从环境变量读取 FEISHU_WEBHOOK - 有简单的消息模板(系统告警模板、日报模板) - 可以作为模块被其他脚本 import 使用

场景 7:Web 内容抓取

写一个 Python 脚本抓取网页内容: - 抓取指定 URL 列表(从 urls.txt 读取) - 提取:标题、正文文字、所有图片 URL - 保存为 Markdown 格式 - 遵守 robots.txt,请求间隔 2 秒 - 依赖:requests + BeautifulSoup4

场景 8:PDF 批量处理

写一个 Python 脚本批量处理 PDF: - 扫描目录下所有 PDF - 提取每个 PDF 的文字内容(第 1-3 页) - 调用 Claude API 生成摘要(3 句话以内) - 输出 summary.csv(文件名、页数、摘要) - 依赖:pdfplumber, anthropic
python
import pdfplumber, anthropic

def summarize_pdf(pdf_path, client):
    with pdfplumber.open(pdf_path) as pdf:
        text = ''.join(p.extract_text() or '' for p in pdf.pages[:3])
    response = client.messages.create(
        model="claude-haiku-3-5",
        max_tokens=200,
        messages=[{"role": "user", "content": f"Summarize in 3 sentences: {text[:2000]}"}]
    )
    return response.content[0].text

让 Claude 写完后必做的 3 件事

1. 让 Claude 加错误处理:大多数情况下第一版不够健壮,追问: "加上完整的错误处理,每种可能的异常都要捕获并给出有用的错误信息"

2. 让 Claude 写测试: "为这个脚本写 pytest 测试,mock 掉网络请求和文件系统操作"

3. 让 Claude 生成 README: "为这个脚本写一个 README.md,包含安装、配置、使用示例"


来源:Anthropic 官方文档 + Claude Code 实战

相关文章推荐

实战Claude Code 命令行工具开发实战:用 AI 快速构建专业 CLI 工具Claude Code 辅助命令行工具(CLI)开发的完整实战指南:Python Click/Typer、Go Cobra、Rust Clap 技术栈选型、用 Claude Code 生成完整 CLI 项目结构(参数解析/子命令/全局选项)、交互式提示和彩色输出、配置文件管理、Shell 自动补全生成、跨平台打包(PyInstaller/goreleaser),以及发布到 PyPI/npm/Homebrew 的完整流程。2026/3/26实战Claude Code Django 实战完全指南:从模型设计到 REST API 开发全流程Claude Code 辅助 Django 开发的完整实战指南:用 Claude Code 生成 Django 项目结构和 Models(含迁移文件)、Django REST Framework(DRF)API 开发(Serializer/ViewSet/Router)、用户认证系统(JWT/Session/第三方登录)、Django ORM 查询优化(select_related/prefetch_related/annotate)、异步任务(Celery + Redis)、测试用例生成(pytest-django)、Docker 化部署,以及在现有 Django 项目中快速定位和修复 Bug 的 Prompt 技巧。2026/3/26实战OpenClaw 与 Claude Code 协同使用实战:AI 聊天助手 + AI 编程助手的终极组合OpenClaw 与 Claude Code 协同使用的完整实战指南:两款工具的定位差异(OpenClaw=聊天AI助手框架,Claude Code=代码库直接操作的编程工具)、在 OpenClaw 中通过 exec 工具调用 Claude Code CLI(claude 命令)执行编程任务、把 OpenClaw 的 Telegram 消息转化为 Claude Code 任务(用自然语言描述→Claude Code执行→返回结果)、使用 OpenClaw Cron 定期触发 Claude Code 执行代码审查/依赖更新/测试/文档生成、CRS 代理在两者中的统一接入方案,以及常见的协同架构模式(主动触发/被动响应/定时执行)。2026/3/24实战Claude Code 自动生成 OpenAPI 文档:从代码到 Swagger UI 一键完成Claude Code 自动生成 OpenAPI(Swagger)文档完整教程:从现有代码逆向生成 OpenAPI 3.1 规范、为 FastAPI/Express/Gin 添加完整的 schema 注释、让 Claude 补全缺失的请求/响应 schema 定义、生成带真实示例值的 Swagger 文档、将 OpenAPI Spec 转为各语言客户端 SDK(openapi-generator)、保持文档与代码同步的 CI/CD 方案,以及从 Postman Collection 迁移到 OpenAPI 的方法。2026/3/20实战Claude Code Shell 脚本自动化实战:用 AI 编写和调试复杂 Bash/Zsh 脚本Claude Code 辅助 Shell 脚本开发的完整指南:让 Claude 生成 Bash/Zsh 脚本的高效提示词、复杂脚本的调试方法(set -x 逐行追踪)、常见运维场景脚本(日志清理/备份/监控告警/批量操作)、跨平台兼容性处理(macOS vs Linux 差异)、脚本安全性检查(避免注入/权限最小化)、让 Claude 解释复杂 awk/sed/find 命令,以及将一次性脚本重构为可复用工具库的方法。2026/3/20实战Claude Code 数据分析实战:Python 数据科学工作流 AI 加速完全指南Claude Code 在数据分析场景的完整使用指南:Jupyter Notebook 环境集成方式、CLAUDE.md 数据分析项目配置、让 Claude 自动完成数据探索(EDA)、Pandas 数据清洗脚本生成、Matplotlib/Seaborn 图表代码生成、统计分析和假设检验解读、机器学习模型选型建议、以及用自然语言描述分析需求让 Claude 生成完整 EDA 报告的实战技巧。2026/3/20