我正在尝试找到一个链接,该链接允许我下载我的 Google 电子表格的 CSV 格式版本。目前我正在使用:
https://docs.google.com/spreadsheets/d/DOCID/export?format=csv
这很好用,只是它只下载第一个工作表。我的文档有多张纸。有谁知道如何格式化此链接,以便下载所有工作表或特定工作表?就像是:
&sheet=all
或者
&sheet=3
我正在尝试找到一个链接,该链接允许我下载我的 Google 电子表格的 CSV 格式版本。目前我正在使用:
https://docs.google.com/spreadsheets/d/DOCID/export?format=csv
这很好用,只是它只下载第一个工作表。我的文档有多张纸。有谁知道如何格式化此链接,以便下载所有工作表或特定工作表?就像是:
&sheet=all
或者
&sheet=3
Google 表格中的每个文档都支持“图表工具数据源协议”,这些文章(以相当随意的方式)对此进行了解释:
要将特定工作表下载为 CSV 文件,请替换{key}
为文档的 ID 和{sheet_name}
要导出的工作表的名称:
https://docs.google.com/spreadsheets/d/{key}/gviz/tq?tqx=out:csv&sheet={sheet_name}
数据源协议非常灵活。其他各种选项包括:
响应格式: 选项包括tqx=out:csv
(CSV 格式)、tqx=out:html
(HTML 表格)和tqx=out:json
(JSON 数据)。
导出工作表的一部分: 提供range={range}
选项,其中范围可以是任何有效的范围说明符,例如A1:C99
或B2:F
。
执行 SQL 查询: 提供tq={query}
选项,例如tq=SELECT a, b, (d+e)*2 WHERE c < 100 AND x = 'yes'
.
导出文本数据:如果您的字段包含文本数据,请 提供该headers=0
选项,否则可能会在导出过程中被删除。
它看起来像这样: https ://docs.google.com/spreadsheets/d/KEY/export?format=csv&id=KEY&gid=SHEET_ID
请注意,“gid”参数是工作表 ID,您可以在打开的 Google 工作表的 URL 末尾找到它。参考:https ://developers.google.com/sheets/api/guides/concepts#sheet_id
这是一个可以下载的示例 csv 数据。该数据的下载链接是这样制作的
截至2020 年 11 月,最优雅、最简单的解决方案似乎埋在@jrc 的回复中:
https://docs.google.com/spreadsheets/d/KEY/export?format=csv&gid=SHEET_ID
这是一个活生生的例子;给定KEY
具有1CTgM1g_aYoWFFpHU6A_qyqWGH0ulCFhs67uAcRVf1Rw
即:https ://docs.google.com/spreadsheets/d/1CTgM1g_aYoWFFpHU6A_qyqWGH0ulCFhs67uAcRVf1Rw
要获取其第一个工作表(即gid=0
)的 CSV 导出的永久链接,请附加/export?format=csv&gid=0
::
注意:如果您只是导出第一张工作表,即gid=0
,则 URL 与原始问题中提出的 URL 格式相同,即
(默认情况下,gid=0
如果未指定,端点将假定)
https://docs.google.com/spreadsheets/d/DOCID/export?format=csv
2021 年更新...问题已在另一篇文章中得到很好的回答。我会添加一些需要注意的东西...
在“发布到网络”上有:
主要基于@kiwidrew 的回答,我制作了这个小工具,因此您不必全部手动操作:Sheet2data.com
几个月前,我开发了一个名为 google-sheets-to-csv 的便捷 python 命令行应用程序:https ://pypi.org/project/google-sheets-to-csv/ ,它允许一次下载多张工作表。
linux上的基本用法(可能也适用于windows,我没有测试):
pip install google-sheets-to-csv
gs-to-csv <spreadsheet ID> <sheet selector (regex)> <output directory>
在哪里:
<Spreadshhet ID>
:是网址中的奇怪数据https://docs.google.com/spreadsheets/d/ /<sheet selector (regex)>
: 是一个正则表达式https://en.wikipedia.org/wiki/Regular_expression<output directory>
是文件系统上的现有目录要一次下载所有工作表,您可以执行以下操作:
mkdir output/
gs-to-csv DOCID ".*" output/
您会在每张纸上找到一个文件。
不要错过项目 README 中的详细信息(关于身份验证,当前发布的令牌尚未由谷歌验证,您将收到一个身份验证警告,如用于验证过程的视频中所示:https ://youtu.be/7zacMyv_ooU?t= 73)如果害怕你可以在这里阅读代码https://gitlab.com/micro-entreprise/google-sheets-to-csv(它是开源软件!)或使用谷歌服务帐户。
以下 URL 格式(作为模板字符串)是唯一对我有用的格式:
`https://docs.google.com/spreadsheets/d/e/${id}/pub?output=csv&id=${id}&gid=${gid}`
这假设整个文档已发布到网络上。
转到文件 > 共享 > 发布到网络