繁体   English   中英

Google Docs 电子表格转 JSON

[英]Google Docs Spreadsheet to JSON

我已经看过很多关于此的文章,但它们似乎已经过时,例如,Google Docs 电子表格 url 都没有关键参数。 我也读过这个: 来自谷歌电子表格的 JSON 数据

然后我读这个来访问数据https://developers.google.com/gdata/samples/spreadsheet_sample

我的电子表格存在于: https : //docs.google.com/spreadsheets/d/1SKI5773_68HiSve1fsz7fr4gotjFWHB7KBuVsOlLz6I/edit#gid=0

我已经尝试使用此代码,我认为我的密钥或语法有问题,请指导修复。

<script src="http://spreadsheets.google.com/feeds/feed/1SKI5773_68HiSve1fsz7fr4gotjFWHB7KBuVsOlLz6I/worksheet/public/basic?alt=json-in-script&callback=importGSS"></script>

<script type="text/javascript">

    function importGSS(json) {
        console.log('finished');
    }
</script>

script标记中的src属性是无效链接(您可以通过直接在浏览器中查看链接来亲自查看)。

URL 的feed/key/worksheet部分有正确的key但错误的feedworksheet

在 URL 中,将“ feed ”替换为“ cells ”(每个单元格的单独值)或“ list ”(每行的单独值)。

同时,将“ worksheet ”替换为“ od6 ”(表示最左边的或默认的工作表 - 请参阅此博客文章以访问其他工作表)。

如果您直接在浏览器中查看这个新 URL ,您可以看到它返回了一个有意义的值。

您的最终脚本标签可能如下所示:

<script src="https://spreadsheets.google.com/feeds/list/1SKI5773_68HiSve1fsz7fr4gotjFWHB7KBuVsOlLz6I/od6/public/values?alt=json-in-script&callback=importGSS"></script>

有关更多信息,您可以在Google Developers 网站上查看示例

APISpark PaaS 具有基于 GSpreadsheet 创建和部署自定义 JSON API 的功能。 这可能有助于并让您更好地控制 Web API(CORS 支持、身份验证、自定义域等)。

请参阅此处的教程: https : //apispark.com/docs/tutorials/google-spreadsheet

您可以考虑使用对您的工作表数据的此请求的替代方法,因为此方法已被弃用。 无论如何,您仍然可以使用其他提要格式,您可以在以下位置看到此替代方案: https : //spreadsheets.google.com/feeds/worksheets/your-spreadsheet-id/private/full

在该结果中,您可以看到任何可用的导出格式。 可以帮助您创建 CSV 或 alt JSON 可视化格式吗?

这里的另一个潜在解决方案是使用此https://gist.github.com/ronaldsmartin/47f5239ab1834c47088e来环绕您现有的电子表格。

idsheet html 参数添加到下面的 URL。

https://script.google.com/macros/s/AKfycbzGvKKUIaqsMuCj7-A2YRhR-f7GZjl4kSxSN1YyLkS01_CfiyE/exec

例如:您的id是您的工作表 ID,即

1SKI5773_68HiSve1fsz7fr4gotjFWHB7KBuVsOlLz6I

和你的工作表

Sheet1

在您的情况下,您实际上可以在此处以 json 的形式查看您的数据(它实际上正在工作)

https://script.google.com/macros/s/AKfycbzGvKKUIaqsMuCj7-A2YRhR-f7GZjl4kSxSN1YyLkS01_CfiyE/exec?id=1SKI5773_68HiSve1fsz7fr4gotjFWHB7KKBIZ1

为安全起见,您应该将上面 github sheetAsJson.gs中的代码表sheetAsJson.gs部署为您自己的 Google Drive。

你上面有很多可能的答案。 对于那些新来的人,如果您正在寻找更受控制的 JSON 生成器,请查看以下要点:

JSONPuller

它接受一个电子表格并返回一个对象数组,其中包含您决定的行作为标题(默认为冻结的任何行)

干杯,

Google电子表格是用于快速制作数据库原型甚至在某些情况下用于生产的绝佳解决方案。

人们已经意识到了这种潜力,如今有许多工具可以将您的Google电子表格转换为后端api

有几个库,例如用于从Google电子表格中获取JSON提要的节点表(只读)

另外,如果您需要完整的独立服务,则可以选择以下付费方式:

还有开源选项,例如

可以通过Docker将其安装在任何云提供商上,您可以将其指向电子表格,它将动态地将其转换为api。

因此,例如,如果您的电子表格具有以下工作表:

| articles | products | users |

它将自动创建3个端点

GET /articles
GET /products
GET /users

它适用于不需要频繁更改的只读api(您无需通过代码即可直接更新电子表格)(尽管可以控制更新间隔)

对我来说最简单的方法是将电子表格导出为 CSV

File -> Download -> Comma-separated values

然后只需使用免费在线服务将 CSV 转换为 JSON

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM