python - 如何使用 Python 将数据附加到谷歌电子表格
问题描述
问题:我有一个增量数据,我需要在每个月初附加到我的谷歌电子表格。我试过的代码:
试验 1
scope = ['https://spreadsheets.google.com/feeds',
'https://www.googleapis.com/auth/drive']
#creds.json is the credentials file
credentials = ServiceAccountCredentials.from_json_keyfile_name('drd_creds.json', scope)
gd = gc.authorize(credentials)
wks = gd.open_by_key('1lONS0lTy-XXXXXXXXXXX').worksheet("worksheet_name")
set_with_dataframe(worksheet,df_adsets)
上面的代码不会附加但会覆盖电子表格。
试验二:按照将熊猫数据框附加到谷歌电子表格中给出的指导
wks = gd.open_by_key('1lONS0lTy-XXXXXXXXXXX').worksheet("worksheet_name")
existing = get_as_dataframe(wks)
updated = existing.append(df_adsets,sort=True)
set_with_dataframe(wks,updated)
问题:方法获取电子表格的所有行和列 (空的也像 NAN),当它附加数据时,会出现一个奇怪的格式,例如 1.原值:23843372759610279改为2.38E+16 2.列顺序改为字母顺序 3.此外,获取所有数据然后附加然后写回似乎是一种非常粗略的方法。
gspread 或任何其他库中是否有任何函数可以直接附加值/数据帧而不是覆盖?(我不想写单独的行,而只是从下一个空行写整个 df )。
解决方案
推荐阅读
- botframework - 新闻样本技能返回未经授权的错误
- android - 如何在 Android 上删除标题栏
- r - 如何根据字符串模式将数据框的所有列拆分为不同的组并将函数应用于每组列?
- amazon-web-services - 如何配置通过 VPC 从 aws ec2 实例访问我的 aws s3 存储桶
- elasticsearch - 一些 KV 过滤器值具有在 Kibana 中标识为字符串的自定义日期
- json - 将规则添加到 JSON 字符串化
- maven - Maven 错误“maven-clean-plugin:2.5 或其依赖项之一无法解析:无法读取工件描述符”
- ios - ios 应用程序在基于 xcode 12.2 构建的 ios 14 上启动后崩溃
- flutter - 颤动iOS部署目标在哪里(项目运行器内部和目标运行器内部)?
- python-3.x - 401 错误 - 带有服务帐户的 Google API