You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python通过Google Spreadsheet创建目录

如何用Python读取Google Sheets数据创建指定结构目录

要实现从Google Sheets提取数据并批量创建指定结构的目录,核心是先获取云端表格数据,再按规则生成目录路径并创建。以下是修正后的完整实现方案:

原代码问题说明

你的代码存在几个关键问题:

  • 导入了pandas但未使用,反而读取本地CSV文件,没有用到Google Sheets的数据
  • 字段名拼写错误:assest_name应为asset_name
  • os.makedirs未添加exist_ok参数,重复创建目录会触发异常
  • 循环外的目录判断逻辑错误,os.removedirs会递归删除空目录,不符合需求

修正后的实现代码

import os
import pandas as pd

# Google Sheets的表格ID
sheet_id = '1kUvTVkvMJOJ6Mqo7h3F_acUMsErulZvpMGTyWQxeaQM'
# 直接从Google Sheets导出CSV并读取为DataFrame
df = pd.read_csv(f"https://docs.google.com/spreadsheets/d/{sheet_id}/export?format=csv")

# 根目录路径(用r前缀避免转义问题)
root = r'D:/Project/Zee/SRGMP/Production/3D'

# 遍历表格中的每一行数据
for _, row in df.iterrows():
    set_name = row['set_name']
    # 修正拼写错误:assest_name -> asset_name
    asset_name = row['asset_name']
    
    # 固定需要创建的子目录
    fixed_subfolders = ['wip', 'export']
    for folder in fixed_subfolders:
        # 用os.path.join拼接路径,适配不同系统的路径分隔符
        target_path = os.path.join(root, set_name, 'asset', asset_name, folder)
        # 创建目录,exist_ok=True允许目录已存在时不报错
        os.makedirs(target_path, exist_ok=True)
        print(f"目录创建完成: {target_path}")

关键细节说明

  1. 读取Google Sheets数据:通过Google Sheets的CSV导出链接直接获取数据,无需手动下载表格
  2. 路径拼接:使用os.path.join代替字符串拼接,自动适配Windows/macOS/Linux的路径格式
  3. 安全创建目录:exist_ok=True参数确保目录已存在时不会抛出异常,避免重复执行脚本时报错
  4. 字段名修正:修正了原代码中assest_name的拼写错误,确保能正确读取表格中的字段

内容的提问来源于stack exchange,提问作者Rishi Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 21:15:34