使用Python gspread在Google Sheets最后填充行后追加dataframe数据的问题
使用gspread向Google Sheets追加DataFrame数据的方法
你之前使用的update方法默认从表格首行开始写入内容,所以会覆盖原有数据,要实现末尾追加效果,直接调用gspread内置的append_rows方法即可。
基础用法(仅追加数据行,不重复写表头)
# 将DataFrame的数值部分转为二维列表 append_data = df_data.values.tolist() # 直接追加到表格已有内容的最后一行之后 sheet.append_rows(append_data)
需同时追加表头的用法
如果是首次写入表格或者需要同步写入表头,把表头列加入待写入列表即可:
append_data = [df_data.columns.values.tolist()] + df_data.values.tolist() sheet.append_rows(append_data)
可选参数说明
- 如果你需要识别数据里的公式、日期等特殊格式,可添加
value_input_option参数,指定按用户输入规则解析内容:sheet.append_rows(append_data, value_input_option="USER_ENTERED") - 如果单次追加数据量较大,可以先调用
sheet.batch_update()开启批量写入模式,降低接口请求频率。
内容的提问来源于stack exchange,提问作者Lucas Thaynan
相关产品推荐
相关产品推荐

