[英]Import JSON From File - Not URL
我收到了一份 JSON 文件,其中包含來自美洲杯游艇的數據,用於一場比賽。 如果這是正確的術語,它有 22 條“路徑”,來自游艇上的傳感器。
每個在線推薦都會從 GitHub 的“ImportJSON”返回腳本。 但是,我無法調整提供的功能以從文件導入,而不是從 URL 訪問 JSON 提要。
我也嘗試將 JSON 文件作為文本文件導入,但是它太大了,並且拋出了異常。
帶有 ImportJSON 腳本的電子表格的公共版本位於ACWS ,json 文件的副本位於boat1.json (55.8Mb) 以及壓縮文件位於boat1.ZADCDBD79A8D84175C223.9B192AADCF175C223.9bM2
任何有關如何導入此 JSON 文件的建議都將受到歡迎。
要使用任何導入 function,您不能使用本地文件。 您必須使用 URL。 不過,您的 Google 文件頁面的下載鏈接可以正常工作。
Google 目前將 URLFetchApp 調用限制為 50MB,因此無法直接導入。 幸運的是,您的 zip 文件比這小得多,而 Apps 腳本 API 恰好有一個解壓縮 function。
您可以調整此應用程序腳本以滿足您的需求:
function ImportMyZipFile()
{
// Your zip file URL:
const url = 'https://drive.google.com/u/0/uc?id=1Zz5Oc_ZbK5Ohk0YRU6LxG2GdfEskf10_&export=download';
let blob = UrlFetchApp.fetch(url).getBlob();
// Need this or unzip will throw an error
blob.setContentType('application/zip');
// Get the only file in the zip archive
let unzipped = Utilities.unzip(blob)[0];
// Parse file contents to JS object
let contents = unzipped.getDataAsString();
let parsed = JSON.parse(contents);
// Do what you want with parsed here...
return /* data array here */;
}
parsed
現在包含您的 JavaScript object。 將 output 到單元格中,在單元格中調用 function,它將 output 中的數據數組的內容。 我不確切知道您想要 json 文件中的哪些數據,但這應該足以讓您入門。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.