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

Python将Google Sheet导出为本地CSV文件:代码运行问题解决

解决Google Sheet导出本地CSV的gspread代码问题

嘿,我来帮你搞定这个导出问题!你遇到的报错核心原因是:gspread的Worksheet对象根本没有内置的to_csv()方法,直接调用自然会失效。下面给你两种实用的解决方案,都能顺利完成导出需求:

方法一:结合Pandas快速导出(推荐)

Pandas处理表格数据非常方便,搭配gspread能轻松完成导出操作,步骤如下:

  1. 先确保安装所需依赖(如果没装的话):
pip install gspread pandas
  1. 修改后的代码:
import gspread
import pandas as pd

# 连接到Google Sheets服务
gc = gspread.service_account(filename='client_secret.json')
# 打开目标表格和工作表
worksheet = gc.open("sheets").worksheet("sheet1")

# 获取所有数据并转换为DataFrame
sheet_data = worksheet.get_all_records()
df = pd.DataFrame(sheet_data)

# 导出为CSV文件(index=False避免写入额外索引列)
df.to_csv("exported_file.csv", index=False, encoding="utf-8")

方法二:纯Python标准库实现(无需额外依赖)

如果你的环境不能安装Pandas,用Python自带的csv模块也能搞定:

import gspread
import csv

# 连接到Google Sheets服务
gc = gspread.service_account(filename='client_secret.json')
worksheet = gc.open("sheets").worksheet("sheet1")

# 获取工作表所有行的内容
all_rows = worksheet.get_all_values()

# 写入CSV文件
with open("exported_file.csv", "w", newline="", encoding="utf-8") as csv_file:
    writer = csv.writer(csv_file)
    writer.writerows(all_rows)

关键注意事项

  • 确认client_secret.json的文件路径正确,并且该服务账号的邮箱已经被添加到目标Google Sheet的共享列表中(至少赋予「查看」权限,导出需要读取数据)。
  • 如果你的表格包含特殊字符或非英文内容,记得指定encoding="utf-8",避免导出后出现乱码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 11:02:39