在「讀取 Google 試算表」的教學裡已經能順利讀取 Google 試算表的資料,這篇教學會延續相關的程式,實作可以透過 Python 程式,將資料寫入 Google 試算表的功能。
原文參考:寫入 Google 試算表
本篇使用的 Python 版本為 3.7.12,所有範例可使用 Google Colab 實作,不用安裝任何軟體 ( 參考:使用 Google Colab )
開啟 Google 雲端硬碟,新增一個 Google 試算表,在試算表裡開啟 Apps Script,輸入下方的程式碼。
javascript >>>>
function doGet(e) {
var SpreadSheet = SpreadsheetApp.getActive(); // 讀取 Apps Script 所綁定的 Google Sheet
var params = e.parameter; // 讀取網址參數
var name = params.name || '工作表1'; // 如果參數有 name 就使用,否則就是工作表1
var SheetName = SpreadSheet.getSheetByName(name); // 取得工作表內容
var raw_data = params.data; // 讀取網址參數的 data 內容
data = JSON.parse(raw_data); // 轉換成 json 格式
var top = params.top || false; // 如果沒有設定 top 參數就使用 false
var range;
try{
if(top){
SheetName.insertRowsBefore(1,1); // 如果 top 等於 true,從上方插入資料
range = SheetName.getRange(1,1,1,data.length); // 設定插入資料範圍
}
else{
range = SheetName.getRange(SheetName.getLastRow()+1,1,1,data.length); // 如果 top 等於 false,從下方插入資料
}
}catch{
range = SheetName.getRange(SheetName.getLastRow()+1,1,1,data.length);
}
range.setValues([data]) // 插入資料
return ContentService.createTextOutput(true);
}
完成後部署 Apps Script,得到一串可使用 Get 方法讀取的網址。
更新部署後,使用下方 Python 程式,將串列格式的資料 data 放在字典變數 params 中,接著就能透過 get 的方式寫入 google 試算表。
import requests
url = '部署的網址'
params = {
'name':'工作表1',
'top':'true',
'data':'[123,456,789]'
}
web = requests.get(url=url, params=params)
如果要使用 Python 串接 Google 試算表,做到讀取或寫入的功能,必需要搭配 Apps Script 方能實現,一但可以操作 Google 試算表,就能把 Google 試算表當作簡單的資料庫使用,相當方便!
大家好,我是 OXXO,是個即將邁入中年的斜槓青年,我已經寫了超過 400 篇 Python 的教學,有興趣可以參考下方連結呦~ ^_^