Library Python untuk mengakses data PDDIKTI Kemdikbud dengan mudah, aman, dan terdokumentasi lengkap
Wrapper API Python yang powerful dan user-friendly untuk mengambil data dari PDDIKTI Kemdikbud. Library ini menyediakan interface yang mudah digunakan untuk mengakses data mahasiswa, dosen, perguruan tinggi, dan program studi di Indonesia dengan dukungan type hints, error handling yang komprehensif, dan dokumentasi lengkap.
- 🚀 Fitur Utama
- 📦 Instalasi
- ⚡ Quick Start
⚠️ Error Handling- 📚 Dokumentasi Lengkap
- 📊 Struktur Data Response
- 📝 Changelog
- 📋 Requirements
- 🧪 Testing
- 🤝 Contributing
- 📄 License
- ✅ Type Hints Lengkap: Full type annotations untuk better IDE support
- ✅ Error Handling Komprehensif: Custom exceptions dan validation
- ✅ Context Manager Support: Resource management yang aman
- ✅ Dokumentasi Lengkap: Google-style docstrings dengan 63 API methods
- ✅ Performance Optimized: Connection pooling dan retry strategy
- ✅ Indonesian Context: Field explanations dalam konteks pendidikan Indonesia
- ✅ Flexible Parameters: Support untuk integer dan string parameters
- ✅ Production Ready: Enhanced validation dan logging
pip install pddiktipyRequirements:
- Python 3.7+
- requests
- urllib3
from pddiktipy import api
from pprint import pprint
# Menggunakan context manager (recommended)
with api() as client:
# Cari semua data dengan keyword
hasil = client.search_all('Unika Soegijapranata')
pprint(hasil)
# Cari mahasiswa spesifik
mahasiswa = client.search_mahasiswa('Ilham Riski Wibowo')
pprint(mahasiswa)Library ini menyediakan error handling yang komprehensif:
from pddiktipy import api
from pddiktipy.exceptions import (
ValidationError,
APIConnectionError,
APITimeoutError,
PDDIKTIError
)
try:
with api() as client:
# Ini akan raise ValidationError karena keyword kosong
result = client.search_mahasiswa("")
except ValidationError as e:
print(f"Error validasi: {e}")
except APIConnectionError as e:
print(f"Error koneksi: {e}")
except APITimeoutError as e:
print(f"Request timeout: {e}")
except PDDIKTIError as e:
print(f"Error PDDIKTI API: {e}")➡️ API Documentation - 63 method API dengan dokumentasi komprehensif, contoh penggunaan, dan struktur data response
Semua response API menggunakan TypedDict untuk type safety dan konsistensi. Struktur data disesuaikan dengan konteks pendidikan Indonesia dan standar PDDIKTI.
📝 Changelog - Riwayat versi dan roadmap pengembangan
- Python 3.7+
- requests
- urllib3
🧪 Testing Guide - Panduan testing dan quality assurance
🤝 Contributing Guide - Panduan berkontribusi pada proyek
📄 MIT License - Distributed under the MIT License
- Author: Ilham Riski Wibowo
- Issues: GitHub Issues
- PyPI: pddiktipy
⭐ Jika library ini membantu proyek Anda, jangan lupa untuk memberikan star di GitHub!