Google 表格 CSV 下载不适用于列中的不同数据类型

Cra*_*aig 0 google-sheets export-to-csv

注意:包含解决方法。我认为应该为下一个人记录下来。

背景:

我在 Google 表格文档中有一个非常简单的表格。

ID 开始#0.key 开始#0.值 开始#1.key 开始#1.值
Α 帮助查找 2002年 标题查找 高清1
贝塔 颜色 红色的 背景 2003年

我通过下载网址导出工作表的内容: https://docs.google.com/spreadsheets/d/{documentId}/gviz/tq?tqx=out:csv

以下是从该网址下载的原始文本字节的副本:

“id”,“start#0.key”,“start#0.value”,“start#1.key”,“start#1.value”
“阿尔法”,“帮助查找”,“2002”,“标题查找”,“”
“贝塔”、“颜色”、“”、“背景”、“2003”


问题:

注意:

  • 第二行 (Alpha) 的'start#1.value'单元格是空字符串,而不是'HD1'
  • 第三行(Beta)的'start#0.value'单元格是空字符串,而不是'Red'

看来,因为该单元格的“Beta”值是数字,并且该列的格式是“自动”,所以在导出过程中将删除任何字符串值。 Google 表格 UI 的屏幕截图,显示“格式 | 数字”菜单选项,指示“自动”

分辨率(不理想)

当我将列的格式更改为“数字 | 纯文本”时,我能够从 CSV 导出中获取所有数据。 Google 表格 UI 的屏幕截图,显示“格式 | 数字”菜单选项,指示“纯文本”

这是 url 下载的数据:

“id”,“start#0.key”,“start#0.value”,“start#1.key”,“start#1.value”
“阿尔法”,“帮助查找”,“2002”,“标题查找”,“HD1”
“贝塔”、“颜色”、“红色”、“背景”、“2003”

未对 Google 表格文档进行其他更改 - 仅将“start#1.value”列的格式更改为“数字 - 纯文本”。

期待:

鉴于我明确要求“csv”输出,请参阅网址的查询字符串参数中的“tqx=out:csv”,我将从电子表格中获取所有文本。

Tan*_*ike 7

我和你有同样的经历。在这种情况下,我可以通过更改端点来检索正确的 CSV 数据。

从您可以使用 将电子表格导出为 CSV 的情况来看https://docs.google.com/spreadsheets/d/{documentId}/gviz/tq?tqx=out:csv,我认为您的电子表格是公开共享的。如果我的理解是正确的,那么按如下方式更改端点怎么样?

从:

https://docs.google.com/spreadsheets/d/{documentId}/gviz/tq?tqx=out:csv
Run Code Online (Sandbox Code Playgroud)

到:

https://docs.google.com/spreadsheets/d/{spreadsheetId}/export?format=csv
Run Code Online (Sandbox Code Playgroud)

或者,如果您想检索特定的工作表,请gid按如下方式使用。

https://docs.google.com/spreadsheets/d/{spreadsheetId}/export?format=csv&gid={sheetId}
Run Code Online (Sandbox Code Playgroud)