上周接了个 Excel 批量合并的活,客户说之前找人做要 3 天,我用 Codex 40 分钟交付了。今天分享完整流程。
为什么选 Codex 而不是 Cursor?
先说清楚场景区别:
| 工具 | 定位 | 适用场景 |
|---|---|---|
| Cursor | IDE 插件(副驾驶) | 你自己写代码时的实时补全 |
| Codex CLI | 终端 Agent(自动驾驶) | 接单时快速出活 |
接单的核心逻辑:客户给需求 → 你出代码 → 交付走人。这恰恰是 Codex 的强项——你给它一个 Prompt,它帮你拆解任务、生成代码、跑测试、提交 PR,全流程自动化。
Step 1:客户给需求
需求长这样:
"帮我把 50 个部门的月度报表合并成一个总表,每个部门的 Excel 格式都一样,都是'部门名_2026_01.xlsx'这种格式,合并后要按部门分 sheet。"
收到需求后,第一步不是直接开干,而是梳理清楚需求边界,然后写 Prompt。
Step 2:写 Prompt 给 Codex
任务:合并多个部门的 Excel 文件到一个总文件
输入:
- 源文件夹:./dept_reports/
- 文件命名格式:部门名_YYYY_MM.xlsx
- 示例:销售部_2026_01.xlsx
处理逻辑:
1. 扫描源文件夹下所有 .xlsx 文件
2. 读取每个文件的第一个 sheet(假设都有表头)
3. 在新文件里按文件名中的部门名创建 sheet
4. 将数据写入对应 sheet
5. 生成的合并文件命名为:月度汇总_YYYY_MM_总表.xlsx
约束:
- 保留原始数据的格式(日期、货币等)
- 如果某个 sheet 为空,跳过不处理
- 打印处理进度:正在处理 XXX 部门...
- 最后输出统计:共处理 X 个部门,合并 X 行数据
然后在终端执行:
codex --prompt "$(cat prompt.txt)" --mode full-auto
Step 3:Codex 自动生成代码
Codex 会自动拆解任务,生成类似这样的代码:
import os
import pandas as pd
from pathlib import Path
def merge_department_reports(source_dir: str, output_dir: str = "./output") -> dict:
source_path = Path(source_dir)
os.makedirs(output_dir, exist_ok=True)
excel_files = list(source_path.glob("*_2026_*.xlsx"))
stats = {"total_files": 0, "total_rows": 0, "departments": []}
with pd.ExcelWriter(f"{output_dir}/月度汇总_总表.xlsx", engine="openpyxl") as writer:
for file_path in excel_files:
dept_name = file_path.stem.split("_")[0]
print(f"正在处理:{dept_name}...")
try:
df = pd.read_excel(file_path)
if not df.empty:
df.to_excel(writer, sheet_name=dept_name, index=False)
stats["departments"].append(dept_name)
stats["total_rows"] += len(df)
stats["total_files"] += 1
except Exception as e:
print(f"跳过 {dept_name}:{str(e)}")
continue
print(f"\n完成!共处理 {stats['total_files']} 个部门,合并 {stats['total_rows']} 行数据")
return stats
if __name__ == "__main__":
result = merge_department_reports("./dept_reports")
Step 4:Review + 微调
Codex 生成的代码基本能跑,但有几个点我会手动调整:
- 文件名正则匹配更精确 — 避免误匹配其他年份的文件
- 日期格式统一 — 客户说日期列有时是字符串有时是日期对象
- 空文件夹处理 — 源目录为空时提示用户而不是报错
这些调整花了大概 5 分钟,因为代码框架已经有了,剩下就是修边角。
Step 5:测试运行 + 交付
正在处理:销售部...
正在处理:市场部...
正在处理:技术部...
...
完成!共处理 48 个部门,合并 12,847 行数据
交付给客户:合并好的 Excel 文件 + 源代码 + 10 分钟语音讲解。
客户很满意,尾款秒到。
Codex CLI 安装与配置速通
安装(需要 Node.js 22+)
npm install -g @openai/codex
三种审批模式
| 模式 | 说明 | 适用场景 |
|---|---|---|
suggest |
每一步都让你确认 | 刚上手时 |
auto-edit |
读取自动,写操作需确认 | 有一定把握 |
full-auto |
全自动执行 | 你完全理解代码要做什么 |
接单场景建议用 full-auto,前提是 Prompt 够清晰。
国内用户配置中转
export OPENAI_API_BASE="https://api.ofox.ai/v1"
export OPENAI_API_KEY="your-api-key"
ChatGPT Plus 用户($20/月)可以直接用,不需要额外付费。
我常用的 3 个 Prompt 模板
模板 1:Excel 自动化脚本
写一个 Python 脚本实现:
1. 读取指定目录下的所有 CSV 文件
2. 清洗数据(去除空行、统一日期格式)
3. 按指定列聚合计算(求和/均值)
4. 输出到新的 Excel 文件,带透视表
输入目录:./data/
输出文件:./result/汇总.xlsx
聚合维度:部门
计算指标:销售额(求和)、订单数(计数)
模板 2:爬虫脚本
写一个 Python 爬虫:
- 目标网站:某电商平台的商品搜索页
- 抓取内容:商品名称、价格、销量、评分
- 翻页逻辑:抓取前 10 页
- 数据存储:保存为 CSV
要求:使用 requests + BeautifulSoup,添加请求间隔(2 秒)
模板 3:数据处理管道
写一个数据处理管道:
1. 从 MySQL 数据库读取订单表
2. 关联用户表获取用户信息
3. 计算每个用户的总消费金额、下单次数、平均客单价
4. 生成用户画像 CSV,按消费金额降序排列
数据库连接参数通过 config.ini 读取,不要硬编码
写在最后
AI 编程工具不是替代你,是放大你。Codex 能帮你快速出活,但它不懂你的客户、不理解业务细节、不擅长人情世故——这些还得靠你。
来源:CSDN 实战分享《我用 Codex 接 Python 自动化单,从接需求到交付代码只用了 40 分钟》 原文链接:https://gitcode.csdn.net/6a23e74f662f9a54cb7aa039.html
资料最后核对日期:2026-08-09 · 内容整理自 CodexGuide 社区公开教程