✅ 10. Penggunaan API & Requests dalam Python
📌 API (Application Programming Interface) memungkinkan aplikasi untuk berkomunikasi dengan sistem lain melalui HTTP.
📌 Requests adalah pustaka Python untuk melakukan permintaan HTTP ke API eksternal.
1️⃣ Konsep API & HTTP Request
📌 Apa itu API?
API adalah antarmuka yang memungkinkan aplikasi untuk berkomunikasi dengan layanan lain, seperti mengambil data cuaca, harga saham, atau informasi produk dari marketplace (Shopee, Amazon, dll.).
📌 HTTP Request Methods
| Metode | Fungsi |
|---|---|
| GET | Mengambil data dari server |
| POST | Mengirim data ke server |
| PUT | Memperbarui data di server |
| DELETE | Menghapus data dari server |
📌 Contoh API Gratis
- OpenWeather API → Data cuaca
- GitHub API → Informasi repositori
- Shopee API → Produk dan transaksi
2️⃣ Menggunakan requests untuk Mengambil Data dari API
📌 Menginstall requests (Jika Belum Ada)
pip install requests
📌 Contoh Permintaan GET ke API Publik
import requests
url = "https://jsonplaceholder.typicode.com/posts/1" # API contoh
response = requests.get(url) # Mengirim permintaan GET
print(response.status_code) # Status HTTP (200 = sukses)
print(response.text) # Isi respon dalam format JSON
📌 Penjelasan:
✅ requests.get(url) → Mengambil data dari API.
✅ response.status_code → Cek status kode (200 = sukses).
✅ response.text → Hasil respon dalam bentuk string JSON.
3️⃣ Parsing JSON & XML
🔹 Parsing Data JSON
📌 API biasanya mengembalikan data dalam format JSON. Kita bisa mengonversinya menjadi dictionary Python.
import requests
url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)
data = response.json() # Mengubah JSON ke Dictionary
print(data["title"]) # Mengakses nilai berdasarkan key
📌 Penjelasan:
✅ response.json() → Mengubah JSON ke dictionary Python.
✅ data["title"] → Mengakses isi JSON berdasarkan key.
🔹 Parsing Data XML
📌 Beberapa API mengembalikan data dalam format XML. Kita bisa menggunakan xml.etree.ElementTree.
import requests
import xml.etree.ElementTree as ET
url = "https://www.w3schools.com/xml/note.xml" # API dengan XML
response = requests.get(url)
root = ET.fromstring(response.content) # Parsing XML
for child in root:
print(child.tag, ":", child.text) # Menampilkan isi XML
📌 Penjelasan:
✅ ET.fromstring(response.content) → Parsing data XML.
✅ child.tag → Nama elemen XML.
✅ child.text → Isi elemen XML.
4️⃣ Menggunakan requests untuk Mengirim Data (POST Request)
📌 Kadang kita perlu mengirim data ke API, misalnya untuk login atau menambahkan produk.
import requests
url = "https://jsonplaceholder.typicode.com/posts"
data = {
"title": "Belajar API",
"body": "Ini adalah contoh POST request",
"userId": 1
}
response = requests.post(url, json=data) # Kirim data JSON
print(response.status_code) # Cek apakah berhasil (201 = sukses)
print(response.json()) # Lihat respon dari server
📌 Penjelasan:
✅ requests.post(url, json=data) → Mengirim data JSON ke server.
✅ 201 Created → Respon jika data berhasil dikirim.
5️⃣ Menggunakan API dengan Token Autentikasi
📌 Beberapa API memerlukan autentikasi dengan API Key atau Token.
🔹 Contoh API dengan Header Token
import requests
url = "https://api.example.com/data"
headers = {
"Authorization": "Bearer TOKEN_API_ANDA"
}
response = requests.get(url, headers=headers)
print(response.json())
📌 Penjelasan:
✅ headers = {"Authorization": "Bearer TOKEN_API_ANDA"} → Menggunakan API Key untuk autentikasi.
📌 Kesimpulan
✅ API digunakan untuk berkomunikasi antar aplikasi melalui HTTP.
✅ Menggunakan requests.get() untuk mengambil data API.
✅ Gunakan .json() untuk mengubah JSON ke dictionary Python.
✅ Gunakan .post() untuk mengirim data ke API.
✅ Gunakan headers untuk autentikasi API yang memerlukan token.
🔥 Selanjutnya, kita bisa belajar cara otomatisasi API untuk mengunggah produk ke Shopee, TikTok Shop, dll. Mau lanjut? 🚀
Tidak ada komentar:
Posting Komentar