10. Penggunaan API & Requests dalam Python

 

✅ 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