REST API Interaction
Kirish
REST API — zamonaviy tizimlarda ma’lumot almashish va xizmatlar bilan integratsiya qilish uchun eng ko‘p ishlatiladigan protokollardan biri. Python’da REST API bilan ishlash uchun eng qulay kutubxona bu — requests.
Asosiy amaliyotlar
1. GET so‘rovi yuborish
import requests
response = requests.get('https://jsonplaceholder.typicode.com/posts/1')
print("Status:", response.status_code)
print("Ma’lumot:", response.json())
2. POST so‘rovi yuborish
import requests
data = {'title': 'Test', 'body': 'Salom!', 'userId': 1}
response = requests.post('https://jsonplaceholder.typicode.com/posts', json=data)
print("Status:", response.status_code)
print("Natija:", response.json())
3. PUT va PATCH so‘rovlari
import requests
update = {'title': 'Yangi sarlavha'}
response = requests.put('https://jsonplaceholder.typicode.com/posts/1', json=update)
print(response.json())
patch = {'body': 'Faqat body o‘zgardi'}
response = requests.patch('https://jsonplaceholder.typicode.com/posts/1', json=patch)
print(response.json())
4. DELETE so‘rovi yuborish
import requests
response = requests.delete('https://jsonplaceholder.typicode.com/posts/1')
print("Status:", response.status_code)
5. Header va autentifikatsiya bilan ishlash
import requests
headers = {'Authorization': 'Bearer TOKEN'}
response = requests.get('https://api.example.com/data', headers=headers)
print(response.json())
6. Xatoliklarni boshqarish
import requests
try:
response = requests.get('https://api.example.com/data')
response.raise_for_status()
except requests.exceptions.RequestException as e:
print("Xatolik:", e)
Amaliy misollar
1. API’dan ma’lumotlarni faylga yozish
import requests
response = requests.get('https://jsonplaceholder.typicode.com/posts')
with open('posts.json', 'w') as f:
f.write(response.text)
2. API’dan kelgan JSON’ni tahlil qilish
import requests
response = requests.get('https://jsonplaceholder.typicode.com/users')
users = response.json()
for user in users:
print(user['name'], user['email'])
Xulosa
Python’da REST API bilan ishlash uchun requests kutubxonasi eng qulay va kuchli vosita hisoblanadi. GET, POST, PUT, PATCH, DELETE so‘rovlari, headerlar, autentifikatsiya va xatoliklarni boshqarish orqali har qanday API bilan integratsiya va