تبدیل دستورات curl به کد Python - تولید کد Python requests آماده استفاده برای درخواستهای API
# Python requests code will appear here # Example: import requests url = "https://api.example.com/data" payload = {"name": "test"} headers = { "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.status_code) print(response.text)
در اینجا برخی دستورات curl رایج که میتوانید به کد Python تبدیل کنید آمده است:
curl https://api.example.com/users
curl -X POST -H "Content-Type: application/json" -d '{"name":"John","email":"[email protected]"}' https://api.example.com/users
curl -X PUT -H "Authorization: Bearer token123" -d '{"status":"active"}' https://api.example.com/users/1
curl -X DELETE https://api.example.com/users/1
curl -H "X-API-Key: abc123" -H "Accept: application/json" https://api.example.com/data
کتابخانه requests در Python روشی قدرتمند و زیبا برای ارسال درخواستهای HTTP فراهم میکند. در اینجا برخی الگوهای رایج Python requests آمده است:
import requests url = "https://api.example.com/upload" files = {'file': open('document.pdf', 'rb')} headers = {"Authorization": "Bearer YOUR_TOKEN_HERE"} response = requests.post(url, files=files, headers=headers) print(response.json())
import requests from requests.exceptions import RequestException url = "https://api.example.com/data" try: response = requests.get(url, timeout=5) response.raise_for_status() # Raises exception for 4XX/5XX responses data = response.json() print(data) except RequestException as e: print(f"Error making request: {e}")
دستور curl خود را کپی کنید → در کادر ورودی جایگذاری کنید → کد Python requests تبدیل شده را دریافت کنید
مبدل پیشرفته ما دستورات پیچیده curl را پشتیبانی میکند و آنها را به کد Python تمیز، کارآمد و آماده تولید با استفاده از کتابخانه requests ترجمه میکند. مناسب برای توسعه API، تست و یکپارچهسازی.
ابزار ما این گزینههای رایج curl را پشتیبانی میکند و آنها را به کد Python requests مناسب تبدیل میکند:
ج: کد Python requests تولید شده کاملاً با Python 3.x (3.6 و بالاتر) سازگار است. برای Python 2.x، ممکن است تنظیمات جزئی مورد نیاز باشد، اگرچه ما استفاده از Python 3 را برای امنیت بهتر و پشتیبانی از ویژگیها توصیه میکنیم.
ج: کد پایه تولید شده شامل مدیریت خطای گسترده نیست. برای کد تولیدی، باید بلوکهای try/except را برای مدیریت استثناهای احتمالی مانند requests.exceptions.RequestException اضافه کنید.
ج: کتابخانه requests پردازش پاسخها را آسان میکند. از response.json() برای پاسخهای JSON، response.text برای محتوای متنی یا response.content برای دادههای باینری استفاده کنید.
ج: بله، اگر هنوز کتابخانه requests را ندارید، باید آن را نصب کنید. میتوانید با استفاده از pip آن را نصب کنید: pip install requests
ج: برای آپلود فایل در Python، باید از پارامتر files در متد requests.post() استفاده کنید. مبدل ما دستورات curl با گزینههای -F
یا --form
را پشتیبانی میکند و کد Python مناسب با استفاده از کتابخانه requests تولید میکند.
ج: کتابخانه requests در Python مدیریت کوکی را با شیء Session آسان میکند. هنگامی که دستورات curl شامل مدیریت کوکی (با استفاده از -b
یا --cookie
) را تبدیل میکنید، ابزار ما کد Python تولید میکند که به درستی کوکیها را با استفاده از requests.Session() مدیریت میکند.
ج: در حالی که curl برای تست سریع API در خط فرمان عالی است، Python requests رویکردی برنامهنویسی ارائه میدهد که با برنامههای Python شما یکپارچه میشود. تبدیل curl به Python به پر کردن شکاف بین تست و پیادهسازی در توسعه Python کمک میکند.
درک دستورات curl برای تست مؤثر API با Python ضروری است. در اینجا مرجع سریعی از گزینههای رایج curl که مبدل ما پشتیبانی میکند آمده است:
curl [options] [URL]
-X, --request METHOD
: Specify request method (GET, POST, PUT, DELETE, etc.)-H, --header LINE
: Add header to the request-d, --data DATA
: Send data in POST request-F, --form CONTENT
: Submit form data-u, --user USER:PASSWORD
: Server user and password-k, --insecure
: Allow insecure server connections-I, --head
: Show document info only-v, --verbose
: Make the operation more verbose-s, --silent
: Silent mode--connect-timeout SECONDS
: Maximum time for connectionمبدل Python ما دستورات پیچیده curl شامل چندین هدر، احراز هویت، دادههای محتوا و گزینههای مختلف را پشتیبانی میکند. به سادگی دستور curl خود را جایگذاری کنید و کد Python تمیز و مدرن با استفاده از کتابخانه requests دریافت کنید.
هنگام کار با کتابخانه requests در Python، این بهترین شیوهها را برای تعاملات API کارآمد و امن دنبال کنید:
import requests session = requests.Session() session.headers.update({"Authorization": "Bearer token123"}) # First request response1 = session.get("https://api.example.com/users") # Second request (uses same session) response2 = session.get("https://api.example.com/products") # Close the session when done session.close()
import requests from requests.exceptions import HTTPError, ConnectionError, Timeout try: response = requests.get("https://api.example.com/data", timeout=5) response.raise_for_status() except HTTPError as e: print(f"HTTP error occurred: {e}") except ConnectionError as e: print(f"Connection error occurred: {e}") except Timeout as e: print(f"Timeout error occurred: {e}") except Exception as e: print(f"An error occurred: {e}")
import requests import json response = requests.get("https://api.example.com/data") try: data = response.json() except json.JSONDecodeError: print("Response was not valid JSON") data = {}