Mengirimkan Data Array Menggunakan Python dan Apps Script ke Google Sheets

Dalam posting ini, diberikan contoh mengirimkan data array menggunakan Python urllib dan Apps Script UrlFetchApp.fetch, untuk diinputkan ke Google Sheets dengan fungsi doPost.

Fungsi doPost yang dimaksud, kurang lebih seperti kode dibawah ini:
function doPost(e)
{
	.
	.
	.

	var raw=(e.parameter["raw"]!=null)?JSON.parse(e.parameter["raw"].toString().replace(/'/g, '"')):null;

	var target = SpreadsheetApp.openById(idspreadsheet);
	var ss=target.getSheetByName(sheet);

	ss.getRange(1+start_row,1+start_column,raw.length,raw[0].length).setValues(raw);
	.
	.
	.
}

Di mana variabel target adalah Google Sheet tempat data disimpan.

Sedangkan contoh pengiriman data array, berturut-turut sesuai kode berikut:

Python

from urllib import request, parse
import json

urlmain="https://script.google.com/macros/s/idapppost/exec"

def senddingdata(idspreadsheet,sheet,mode,datum):
    data = { "keyvalue":"keyaccess","idspreadsheet":idspreadsheet,"sheet":sheet,"raw":datum}
    req =  request.Request(urlmain,parse.urlencode(data).encode())
    response = request.urlopen(req)
    return json.loads(response.read())

contohdata=[["0","Kunjungi"],["1","website kami di edugameapp.com"]]
senddingdata("idspreadsheet","NamaSheet",1,contohdata)

Apps Script

var contohdata={};
contohdata[0]=["0","Kunjungi"];
contohdata[1]=["1","website kami di edugameapp.com"];

var data = {
"keyvalue":"keyaccess",
"idspreadsheet":"idspreadsheet",
"sheet":"NamaSheet",
"raw":JSON.stringify(contohdata)
};
var options = {
'method' : 'post',
'payload' : data
};

var urlpostdata="https://script.google.com/macros/s/idapppost/exec";
var response=UrlFetchApp.fetch(urlpostdata,options);

Penambahan JSON.stringify, diperuntukkan agar data dikirimkan dalam bentuk JSON, sebab untuk Apps Script tidak bisa dikirimkan langsung dalam bentuk array.

Sehingga dalam function doPost perlu ditambahkan JSON.parse dan diperlukan pengubahan single quote menjadi double quote

Komentar



Postingan populer dari blog ini

Apps Script untuk Cetak Sertifikat

Genetics Algorithm Method with Progressive Error Prediction

Menambahkan Random Key sebagai ID Pembeda di Google Sheet dengan Apps Script

Menampilkan Undetermined Circle Progressbar di Java

Menghapus Baris di Google Sheets yang Memiliki Sel Kosong dengan Apps Script

Kode Java Membandingkan Dua File

Kode Apps Script MailApp untuk Form Mengirimkan Email

Tutorial Upload File ke Google Drive dari Website

Kaidah Baku untuk Konsistensi Data (PT, Tbk, Pty., & Ltd.)

Checking Data yang Belum Dimasukkan dalam Daftar Menggunakan Query Google Sheet