不推荐使用Google Documents List API:如何在Python中操作电子表格?

时间:2015-04-09 00:15:47

标签: python excel google-apps-script google-api google-api-python-client

与许多其他人一样,我有一个依赖于gspread来使用Python操纵Google Spreadsheets的应用程序。

不幸的是,gspread依赖于文档列表API,即being deprecated。没有太多好的电子表格库 - 并且考虑到Drive API的可怜文档 - 下一步是什么?

任何人都可以通过Drive API和/或其他库来指导操作电子表格的新方法(例如,打开工作表,将值写入特定单元格等)吗?

我们现在可以使用哪些工具(或它们的组合)?

1 个答案:

答案 0 :(得分:0)

您认为gspread使用较旧的技术是正确的。 GData APIs是上一代Google API。虽然并非所有GData API都已弃用,但all newer Google APIs 使用the Google Data protocol。另一种方法是让gspread维护者升级他们的库(下面的步骤和学习资源),尤其是。如果你已经感到舒服和/或有大量依赖它的应用程序。

目前使用Google API的方法是获取the Google APIs Client Library for Python(它与{3}}一样简单[或Python 3的pip install -U google-api-python-client]。完成后,您将使用Google Drive API代替文档列表API和Google Sheets API,而不是旧的Google Spreadsheets API。

仅供参考,Sheets API功能更强大。比旧版API更灵活。这里有一个来自官方文档的code sample来帮助你开始。然而,这里有更多"真实世界"使用您可以学习的API的例子(视频和博客文章):

最新的Sheets API提供旧版本中不可用的功能,即为开发人员提供对Sheet的编程访问,就像使用用户界面一样(创建冻结行,执行单元格格式化,调整行/列大小,添加数据透视表,创建图表等)。如您所见,Sheets API主要用于如上所述的文档定向功能,而文件定向访问(如复制,导入/导出等)是完成了Drive API。以下是使用它的一些示例:

(*) - TL; DR:将纯文本文件上传到云端硬盘,导入/转换为Google文档格式,然后将该文档导出为PDF格式。上面的帖子使用Drive API v2; this follow-up post描述了将其迁移到Drive API v3,并且developer video结合了穷人的转换器"发布是的,新的v3在我完成之前的内容之后就出来了。 pip3