Skip to main content
PDF Metadata Extractor — otomasi rename PDF dari Google Drive menggunakan Python dan CrossRef API

PDF Metadata Extractor: Rename Otomatis File PDF dari Google Drive

3 min 602 words

Punya ratusan file PDF akademik dengan nama seperti 2024_paper_final_v3.pdf atau download (12).pdf? Saya pernah di posisi itu — dan rename satu per satu bukan pilihan.

PDF Metadata Extractor menyelesaikan masalah ini. Tool Python buatan SASHINDO PROJECT ini membaca metadata dari setiap PDF, mengambil judul resmi dari CrossRef API berdasarkan DOI, lalu merename file langsung di Google Drive — semuanya otomatis, tanpa sentuh file satu per satu.

Apa yang Dilakukan Tool Ini

Alurnya sederhana tapi efektif:

  1. Konek ke Google Drive — ambil semua PDF dari folder yang kamu tentukan
  2. Download setiap PDF → baca metadata internal (judul, penulis, tanggal)
  3. Cari DOI di metadata maupun teks 3 halaman pertama
  4. Jika ada DOI → query CrossRef API untuk judul resmi dan data bibliografi lengkap
  5. Rename file di Drive dengan judul terbaik yang ditemukan
  6. Catat semua hasilnya ke Google Sheets — lengkap dengan timestamp dan status

Dari pengalaman saya bantu beberapa peneliti mengelola koleksi PDF mereka, 80% file biasanya berhasil direname otomatis karena punya DOI yang terbaca. Sisanya yang tidak ada DOI tetap bisa direname dari judul PDF internal — atau dibiarkan kalau memang tidak ada data.

Yang Dibutuhkan

Sebelum mulai, pastikan ini sudah siap:

  • Python 3.8 ke atas
  • Google Cloud Project dengan Drive API dan Sheets API diaktifkan
  • File credentials.json dari Google Cloud Console
  • Library Python: PyPDF2, gspread, google-auth-oauthlib, requests

Install semua library sekaligus:

pip install PyPDF2 gspread google-auth-oauthlib google-api-python-client requests

Konfigurasi Awal

Ada empat variabel yang perlu kamu isi di bagian atas script:

DEFAULT_FOLDER_ID = 'ID_FOLDER_GOOGLE_DRIVE_KAMU'
SPREADSHEET_ID = 'ID_SPREADSHEET_UNTUK_OUTPUT'
SHEET_NAME = 'PDF Metadata'
ENABLE_RENAME = True  # False = mode preview saja

DEFAULT_FOLDER_ID — ambil dari URL folder Google Drive kamu. URL-nya biasanya terlihat seperti drive.google.com/drive/folders/XXXX — bagian XXXX itu yang dipakai.

ENABLE_RENAME = False dulu kalau mau lihat hasilnya sebelum komit. Ini yang paling sering saya sarankan ke klien: preview dulu, rename setelah yakin.

Jalankan Tool

Pertama kali run, browser akan terbuka untuk autentikasi Google. Setelah kamu izinkan akses, file token.json dibuat otomatis — run berikutnya langsung jalan tanpa login lagi.

python pdf_metadata_extractor_enhanced.py

Tool akan tanya ID folder (atau tekan Enter untuk pakai default), lalu mulai proses. Di terminal kamu akan lihat progress seperti ini:

[1/47] download (12).pdf
  📝 Judul CrossRef: Deep Learning Approaches for Medical Image Segmentation
  ✅ Renamed: Deep Learning Approaches for Medical Image Segmentation.pdf

[2/47] paper_2023_v2_FINAL.pdf
  ⏭️  Skip: Tidak ada judul atau sama dengan nama file

Hasil di Google Sheets

Setelah selesai, buka spreadsheet yang kamu tentukan. Kamu akan lihat tabel dengan kolom:

NoNama File LamaNama File BaruStatusDOIJudul CrossRefPenulisJurnalTahun

Ini yang berguna — kamu punya rekam jejak lengkap perubahan setiap file. Kalau ada yang salah rename, tinggal lihat di sini nama aslinya apa.

Mode Preview vs Mode Aktif

Ini perbedaan yang penting. Jangan langsung set ENABLE_RENAME = True kalau ini pertama kali kamu pakai di folder penting.

Waktu saya pertama kali test di koleksi 200+ PDF klien dari Surabaya, saya jalankan preview mode dulu — dan ternyata ada beberapa file yang judulnya dari CrossRef terlalu panjang (lebih dari 100 karakter). Tool otomatis potong di 100 karakter, tapi perlu saya cek dulu apakah hasilnya masuk akal sebelum rename beneran.

Set ENABLE_RENAME = False → jalankan → cek output di Sheets → kalau oke, ganti ke True → jalankan ulang.

Prioritas Penamaan

Tool menggunakan urutan ini untuk menentukan nama file baru:

  1. Judul dari CrossRef API — paling akurat karena dari database resmi
  2. Judul dari metadata PDF internal — kalau tidak ada DOI
  3. Nama file lama dipertahankan — kalau tidak ada keduanya (dicatat sebagai skip)

Karakter tidak valid untuk nama file (< > : " / \ | ? *) dihapus otomatis. Spasi berulang juga dibersihkan.

Langkah Selanjutnya

Kalau kamu punya koleksi PDF yang perlu dirapikan — dokumen penelitian, arsip laporan, referensi kuliah — tool ini bisa langsung dipakai. Kode Python-nya tersedia dan bisa dikustomisasi sesuai kebutuhan.

Butuh bantuan setup Google Cloud credentials, atau ingin tool ini diintegrasikan ke workflow yang lebih besar? Hubungi SASHINDO PROJECT — kami bisa bantu dari setup awal sampai tool jalan di folder Google Drive kamu.

Tool Python buatan SASHINDO PROJECT untuk ekstrak metadata PDF, ambil data CrossRef, dan rename file otomatis di Google Drive — lalu ekspor ke Google Sheets.