Berikut adalah panduan untuk membuat skrip Python yang dapat mengunggah file ke Google Drive menggunakan API tanpa OAuth manual. Kita akan menggunakan Service Account untuk autentikasi, yang lebih cocok untuk otomatisasi.
1. Persiapan Awal
Sebelum menjalankan skrip Python, Anda perlu mengatur akun layanan (Service Account) di Google Cloud Console.
1.1 Buat Proyek di Google Cloud
- Buka Google Cloud Console.
- Buat proyek baru atau gunakan proyek yang sudah ada.
- Aktifkan Google Drive API untuk proyek tersebut.
- Pergi ke API & Services > Library
- Cari Google Drive API dan aktifkan.
1.2 Buat Service Account
- Pergi ke API & Services > Credentials.
- Klik Create Credentials > Service Account.
- Isi nama dan deskripsi, lalu klik Create & Continue.
- Berikan akses yang sesuai (misalnya Editor jika hanya ingin mengunggah file).
- Klik Done.
1.3 Unduh JSON Key
- Di API & Services > Credentials, cari akun layanan yang baru dibuat.
- Klik akun layanan, lalu masuk ke tab Keys.
- Klik Add Key > Create new key.
- Pilih JSON, lalu unduh file.
Simpan file ini dengan nama, misalnya, service_account.json
.
1.4 Beri Akses ke Google Drive
- Buka Google Drive.
- Buat folder tempat file akan diunggah.
- Klik kanan folder > Share.
- Salin email akun layanan dari file JSON.
- Tambahkan email tersebut dengan akses Editor.
2. Instalasi Pustaka yang Dibutuhkan
Pastikan Anda memiliki Python terinstal, lalu pasang pustaka google-auth
dan google-auth-oauthlib
.
3. Skrip Python untuk Upload File ke Google Drive
Buat file Python, misalnya upload_to_drive.py
, dan tambahkan kode berikut:
4. Cara Menjalankan Skrip
- Pastikan
service_account.json
ada di direktori yang sama dengan skrip. - Ganti
your_google_drive_folder_id
dengan ID folder Google Drive tujuan. - Jalankan skrip dengan perintah:
Jika berhasil, file akan muncul di Google Drive pada folder yang ditentukan.
5. Penjelasan Kode
- Autentikasi menggunakan Service Account dengan cakupan (
SCOPES
) yang sesuai. - Membangun layanan Google Drive API dengan
build('drive', 'v3', credentials=credentials)
. - Mengunggah file dengan metadata yang menyertakan nama file dan ID folder.
- Menggunakan
MediaFileUpload
agar mendukung file besar.
6. Keamanan dan Praktik Terbaik
- Jangan membagikan file
service_account.json
ke publik. - Gunakan folder Google Drive dengan akses terbatas agar hanya akun layanan yang dapat mengunggah file.
- Bisa dikombinasikan dengan task scheduler (cron jobs atau Windows Task Scheduler) untuk otomatisasi upload berkala.
Sertifikasi BNSP di BACKEND Dev
Kesimpulan
Pelatihan mengenai pengunggahan file ke Google Drive menggunakan API dan autentikasi dengan Service Account memberikan pemahaman mendalam tentang cara mengelola dan mengotomatiskan tugas-tugas terkait pengelolaan data di cloud. Dengan mengikuti langkah-langkah yang jelas dan penggunaan pustaka yang tepat, peserta dapat mengembangkan keterampilan yang sangat berharga dalam pemrograman backend dan integrasi sistem. Kami LSP memiliki skema pelatihan yang dirancang secara profesional, dengan instruktur berpengalaman, dan memberikan sertifikat BNSP yang relevan untuk membuktikan kompetensi dalam bidang pengembangan backend dan penggunaan API.