panduan Skrip Python untuk otomatisasi upload data ke Google Drive dengan API tanpa OAuth manual

11-Oct-2025

Pembuat : Admin Mobile Faculty

Kategori : Media Pembelajaran

panduan Skrip Python untuk otomatisasi upload data ke Google Drive dengan API tanpa OAuth manual
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

  1. Buka Google Cloud Console.
  2. Buat proyek baru atau gunakan proyek yang sudah ada.
  3. Aktifkan Google Drive API untuk proyek tersebut.
    • Pergi ke API & Services > Library
    • Cari Google Drive API dan aktifkan.

1.2 Buat Service Account

  1. Pergi ke API & Services > Credentials.
  2. Klik Create Credentials > Service Account.
  3. Isi nama dan deskripsi, lalu klik Create & Continue.
  4. Berikan akses yang sesuai (misalnya Editor jika hanya ingin mengunggah file).
  5. Klik Done.

1.3 Unduh JSON Key

  1. Di API & Services > Credentials, cari akun layanan yang baru dibuat.
  2. Klik akun layanan, lalu masuk ke tab Keys.
  3. Klik Add Key > Create new key.
  4. Pilih JSON, lalu unduh file.
Simpan file ini dengan nama, misalnya, service_account.json.

1.4 Beri Akses ke Google Drive

  1. Buka Google Drive.
  2. Buat folder tempat file akan diunggah.
  3. Klik kanan folder > Share.
  4. Salin email akun layanan dari file JSON.
  5. 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.
bash
pip install google-auth google-auth-oauthlib google-auth-httplib2 googleapiclient

3. Skrip Python untuk Upload File ke Google Drive

Buat file Python, misalnya upload_to_drive.py, dan tambahkan kode berikut:
python
from googleapiclient.discovery import build from googleapiclient.http import MediaFileUpload from google.oauth2 import service_account# Konfigurasi autentikasi dengan Service Account SERVICE_ACCOUNT_FILE = service_account.json SCOPES = [https://www.googleapis.com/auth/drive]credentials = service_account.Credentials.from_service_account_file( SERVICE_ACCOUNT_FILE, scopes=SCOPES )# Buat layanan Google Drive API service = build(drive, v3, credentials=credentials) # ID folder di Google Drive tempat file akan diunggah FOLDER_ID = your_google_drive_folder_id # Ganti dengan ID folder tujuan def upload_to_drive(file_path, file_name): """Fungsi untuk mengunggah file ke Google Drive""" file_metadata = { name: file_name, parents: [FOLDER_ID] # Menentukan folder tujuan } media = MediaFileUpload(file_path, resumable=True) file = service.files().create( body=file_metadata, media_body=media, fields=id ).execute() print(f"File berhasil diunggah! ID: {file.get(id)}") # Contoh pemanggilan fungsi upload_to_drive(test_file.txt, uploaded_test_file.txt)

4. Cara Menjalankan Skrip

  1. Pastikan service_account.json ada di direktori yang sama dengan skrip.
  2. Ganti your_google_drive_folder_id dengan ID folder Google Drive tujuan.
  3. Jalankan skrip dengan perintah:
    bash
    python upload_to_drive.py
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.