Chapter IV: Mengambil data Google Sheets dengan Python & Bot Telegram.
Karena banyaknya pesan masuk yang menanyakan mengenai bot Telegram untuk mengambil data dari Google Sheets, baik melalui feedbackataupun data Search Consoleblog dicoffeean, pada postingan kali ini saya akan sharingsedikit mengenai tema tersebut.
Membuat Project Baru di Google Console
Saya yakin semuanya pasti sudah punya Akun Google?
Hal pertama yang harus dilakukan agar bisa mengakses data Google Sheets dari program eksternal yaitu dengan membuat projectbaru di alamat berikut ini:
https://console.developers.google.com
Jika anda baru pertama kali mengakses Google Cloud, maka tampilannya akan seperti gambar berikut ini.
Silahkan centang persyaratan layanan dan klik tulisan “Setuju dan Lanjutkan”.

Langkah selanjutnya yaitu membuat projectbaru.

Lalu isikan nama project. Sebagai contoh disini saya membuat projectdengan nama: dicoffeeans.

Selanjutnya, klik pada form searchdan ketikan kata kunci “Google Sheets API” dan “Google Drive API”.

Aktifkan kedua API nya seperti gambar di bawah ini.

Setelah mengaktifkan API, kita memerlukan kredensial untuk dapat mengakses layanan API dari Google.
Klik tombol: “Buat Kredensial”
Kita akan disuguhkan dengan beberapa pertanyaan dari Google, sebagai contoh berikut ini pilihan yang saya gunakan pada postingan ini.

Klik tombol “Kredensial apa yang saya butuhkan?”
Langkah selanjutnya adalah mengisi: nama akun layanan, peran dan jenis kunci. Silahkan isi sesuai keinginan anda, untuk jenis kunci saya memilih JSON.
Agar kita mempunyai akses penuh, pada pilihan peran silahkan pilih:
Project > Editor

Klik lanjutkan, jika berhasil anda akan mendapatkan kunci berupa fileJSON. Silahkan dibuka dengan teks editor kesayangan anda.
Berikut, contoh kunci JSON milik saya.
Abaikan parameter yang lain, untuk keperluan ini yang kita perlukan hanyalah client_email.
Silahkan catat / copy/ simpan email tersebut.

Sampai tahap ini persiapan untuk mengakses API Google sudah selesai.
Memberikan Akses Google Sheets ke Client Email Project
Pilih Google Sheets yang akan kita akses, sebagai contoh berikut ini fileGoogle Sheets saya dengan nama: Dicoffeean_bots.

Perhatikan nama filedan nama Sheet seperti tanda merah pada gambar di atas. Karena nama-nama tersebut akan kita masukkan pada python codenantinya.
Sekarang klik Bagikanlalu masukkan client_emailyang tadi kita simpan. Jangan lupa, beri akses penuh untuk mengedit.
Instalasi Modul Python yang Diperlukan
Modul yang diperlukan dalam artikel ini antara lain:
gspreadoauth2client
Untuk menginstall keduanya, cukup jalankan perintah berikut ini:
pip install gspread oauth2client
Jika menggunakan python3, maka:
pip3 install gspread oauth2client
Note: disini kebetulan saya menggunakan python3.
Membuat Kode Python untuk Akses Google Sheets
Buat filebaru dengan nama spreadsheet.pymisalnya, lalu salin kode berikut ini.
# Python code untuk akses Google Spreadsheets # By dicoffeean # -------------------------------------------- import gspread from oauth2client.service_account import ServiceAccountCredentials def readMyGsheet(): alamatURL = ['https://spreadsheets.google.com/feeds','https://www.googleapis.com/auth/drive'] kredensial = ServiceAccountCredentials.from_json_keyfile_name('dicoffeeans-7ab6a61b1a54.json', alamatURL) client = gspread.authorize(kredensial) # Membaca Sheet1 pada Google Spreadsheets untuk file Dicoffeean_bots: sheet = client.open('Dicoffeean_bots').sheet1 dicoffeean_data = sheet.get_all_records() print(dicoffeean_data) readMyGsheet()Penjelasan :
- Simpan file
spreadsheet.pydan fileJSON di folder yang sama - Ganti
dicoffeeans-7ab6a61b1a54.jsonsesuai dengan nama fileJSON anda - Ganti juga baris kode berikut dengan nama fileGoogle Sheets dan nama sheet1anda masing-masing :
client.open('Dicoffeean_bots').sheet1
Sekarang, saatnya kita tes python scriptdiatas apakah berfungsi dengan baik?
Karena saya menggunakan python3, jadi perintahnya adalah:
python3 spreadsheet.py
Output-nya seperti gambar berikut ini:

Untuk mempermanis outputyang diinginkan, kita bisa menggunakan modul analisis data pada python, salah satunya yaitu: pandas: “Python Data Analysis Library”.
Silahkan di exploresendiri ya …
Mengambil data Google Sheets dengan Bot Telegram
Step terakhir yaitu menggunakan bot telegram untuk mengambil data dari Google Spreadsheets dengan kode python yang telah kita buat.
Bot Telegram disini hanyalah sebagai perantara, yang bekerja sebenarnya adalah python scriptyang kita buat di atas. Yakni python scriptuntuk mengakses dan membaca Google Spreadsheets.
Baiklah, agar sedikit rapi kita akan menambahkan modul pandas pada kode python tadi. Jadi install pandas dengan perintah berikut ini.
pip3 install pandas
Sekarang kita impor modul pandas dan edit kode python diatas menjadi seperti ini.
# Python code untuk akses Google Spreadsheets # By dicoffeean # -------------------------------------------- import gspread import pandas as pd from oauth2client.service_account import ServiceAccountCredentials def readMyGsheet(): alamatURL = ['https://spreadsheets.google.com/feeds','https://www.googleapis.com/auth/drive'] kredensial = ServiceAccountCredentials.from_json_keyfile_name('dicoffeeans-7ab6a61b1a54.json', alamatURL) client = gspread.authorize(kredensial) # Membaca Sheet1 pada Google Spreadsheets untuk file Dicoffeean_bots: sheet = client.open('Dicoffeean_bots').sheet1 dicoffeean_data = sheet.get_all_records() # Konvert menjadi DataFrame df = pd.DataFrame(dicoffeean_data) # Seleksi columns label print(df[['ID', 'Name', 'Jobs']]) readMyGsheet()… Output-nya seperti dibawah ini, terlihat lebih rapi tentunya.

Yang terakhir dari saya, berikut contoh penerapannya dengan Bot Telegram (source codeyang ini nyusul ya!).

Demikianlah artikel singkat mengenai: cara mengambil data Google Spreadsheets dengan Python & Bot Telegram.
Selamat mencoba!
Join Channel Telegram untuk mendapatkan pembaruan artikel lebih cepat :
dicoffeean.com Telegram Channels
Artikel terkait:
- #1: Dasar-Dasar Membuat Bot Telegram
- #2: Membuat Bot Telegram untuk Auto Posting Laporan
- #3: Membuat Notifikasi Terjadwal dengan Telegram bot
Buat Bot Telegram hanya 50 ribu? Klik disini : Jasa Pembuatan Bot Telegram

Yang terakhir dari saya, berikut contoh penerapannya dengan Bot Telegram (source code yang ini nyusul ya!).
Source codenya sdh ada artikelnya mas?
Untuk saat ini belum ada om, nanti semoga bisa saya share di artikel selanjutnya
gimana mas, sudah ada source codenya belum ya.. terima kasih..
Halo kak, aku mulai bingung dari yg phyton2 itu:(
boleh tolong dijelasin nggak? ini harus install software apa dulu gitu gak?
terima kasih sebelumnyaa
kalau menggunakan google script gimana ya kak, mohon petunjuknya
Min untuk bagian kolom tulisan nya di tengahankan apa bisa ya min, saya cari cara nya kok ngk ketemu mohon solusi nya
min untuk source codenya kira kira kapan ya di publish?, atau ada refrensi kah untuk source kode penerapan dengan Bot Telegram
Kak ini untuk ambil data text saja? kalau ingin menampilkan gambar dari id dan link img yang ada di googlesheet bisa?
Bisa disesuaikan sesuai kebutuhan Kak