Google 板


LINE

有連結可以點、有表情符號、其他沒差的 blog 版: https://pt2club.blogspot.com/2021/08/google-sheet-api-v3-v4.html ---------------------------------------------------------------------- 之前用這個網址格式取得 JSON 格式 Google Sheet 資料,一直相安無事: https://spreadsheets.google.com/feeds/list/SHEET_ID/ TAB_INDEX/public/values?alt=json 然後大概從 2021/8/15 開始,就有機率讀取不成功(對,有時候會成功 =.=), 有的時候是炸 CORS 問題、有的時候是炸 404。 狗了一下的結果,應該就是 Google Sheet API v3 在 2021/8/2 停用所導致的。 至於 v3 版跟應該還會繼續活著的 GData 有什麼關係、 為什麼是「有機率掛掉」就… 不研究… [蓋牌][翻白眼] 經過幾天的摸索,如果只是單純要取得 JSON,那麼會遇到下面這幾件事情。 首先要去 Google Cloud Platform 搞一個 API 金鑰(以下簡稱 API_KEY)。 如果之前沒有用過可能還要先開一個(看起來毫無意義的)專案然後才能產生… 有了 API 金鑰之後,接下來是把網址改成這個格式: https://sheets.googleapis.com/v4/spreadsheets/SHEET_ID/ values/RANGE&key=API_KEY 這邊不再是用「第幾個工作表」(或是那個根本不知道怎麼來的 id 值)的方式, 而是指定 RANGE。完整版的 RANGE 大概是「FOO!A1:D100」的長相, 這表示要求「FOO」這個工作表的 A1~D100 這個 cell 範圍的資料。 實測之後(找不到文件… )發現允許下列幾種變形: + FOO:可以省略 cell 範圍。如此會回傳整個 FOO 的資料 + A1:D100:可以省略工作表名稱。 如此會回傳第一個工作表的指定 cell 範圍的資料 回傳的 JSON 也跟以前不一樣,v4 版變得很純: { "range": "'FOO'!A1:D100", "majorDimension": "ROWS", "values": [ ["ColumnA", "欄位B", "ColumnC", "欄位D"], ["第一筆A", "第一筆B", "第一筆C", "第一筆D"], [], ["", "第三筆B"] } + v3 會把 sheet 的第一個 row 的值當成 JSON 的 key 值; v4 純粹就是給你一個二維字串陣列。(反正都能指定範圍了) + v3 遇到第一個空白 row 就會視為後面沒有資料停止輸出; v4 會在指定範圍內確定是否以下空白才停止輸出, 其中夾雜的空白行會給一個空陣列。 + 如果該 row 第 n 個 column 之後都沒有值, 則該 row 對應的陣列長度只到 n - 1。 1~n - 1 當中如果有 column 沒有值,會給空字串。 一樣是實測結果(還是找不到文件… ), 下列狀況會導致 server 給不是 200 的 HTTP status code: + 400:range 無法正常解析 + 403:API_KEY 值不正確 + 404:SHEET_ID 值不正確 最後,用 v4 版,sheet 可以不用做「發布到網路」這一個動作, 但是「共用」設定的「取得連結」要設定為「知道連結的使用者(檢視者)」 -- 錢鍾書: 說出來的話 http://www.psmonkey.org 比不上不說出來的話 Hiking / Singapore 板 只影射著說不出來的話 and more...... --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.166.173.181 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Google/M.1629401330.A.B33.html
1F:→ microloft: 不想處理金鑰的話還是可以繼續用發布到網路的方式 08/20 05:17
2F:→ microloft: 然後自己 csv 轉 json 08/20 05:17
CSV 也太悲情了點 ※ 編輯: PsMonkey (36.239.87.32 臺灣), 08/21/2021 13:35:56
3F:推 wang0424: 專業文 推一個 08/25 18:23







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP