如何使用Python向Google Sheet(谷歌表格)追加写入数据
Python向谷歌表格追加数据操作指南
第一步:安装依赖库
执行以下命令安装所需工具包:
pip install gspread oauth2client
第二步:配置谷歌权限
- 到谷歌云平台创建项目,启用Google Sheets API、Google Drive API,生成服务账号的JSON密钥文件,保存到你的Python项目目录下,命名为
credentials.json - 打开目标谷歌表格,点击右上角「共享」按钮,将密钥文件中
client_email字段对应的邮箱地址添加为协作者,授予编辑权限
第三步:组装待写入数据
你可以直接把现有打印内容作为单条内容写入,也可以拆分为多列对应表格字段,示例如下:
# 方案1:直接使用你生成的完整字符串 content = "2021-08-18 15:00:00 [1451, '2021-08-18 11:07:00'] [-10203, '2021-08-18 14:45:00'] -6900 2 First pair sum:- 234" row_data = [content] # 方案2:拆分为多列写入,更便于后续表格数据处理 row_data = [ time, str(todayMaxProfit), str(todayMaxLoss), pl, len(orderList), int(orderList[0][4]+orderList[1][4]) ]
第四步:执行追加写入操作
核心代码如下:
import gspread from oauth2client.service_account import ServiceAccountCredentials # 配置API权限范围 scope = [ "https://spreadsheets.google.com/feeds", "https://www.googleapis.com/auth/drive" ] # 加载服务账号凭证 creds = ServiceAccountCredentials.from_json_keyfile_name("credentials.json", scope) client = gspread.authorize(creds) # 打开目标表格和对应工作表,替换为你自己的表格名称 sheet = client.open("你的谷歌表格名称").sheet1 # 追加数据到表格最后一行 sheet.append_row(row_data)
常见说明
- 追加操作默认会自动识别现有数据的最后一行,在下方插入新数据,不会覆盖原有内容
- 如果提示权限错误,优先检查服务账号邮箱是否已添加到表格共享列表,且授予了编辑权限
- 若你要操作的不是表格默认的第一个工作表,可以把
.sheet1替换为.worksheet("工作表名称")
内容的提问来源于stack exchange,提问作者Brijesh Kalkani
相关产品推荐
相关产品推荐

