Konversi perintah curl ke kode Python - Hasilkan kode Python requests siap pakai untuk permintaan 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)
Berikut adalah beberapa perintah curl umum yang dapat Anda konversi ke kode 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
Library requests Python adalah cara yang kuat dan elegan untuk membuat permintaan HTTP. Berikut adalah beberapa pola Python requests yang umum:
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}")
Salin perintah curl Anda → Tempel ke kotak input → Dapatkan kode Python requests yang dikonversi
Konverter lanjutan kami mendukung perintah curl kompleks dan menerjemahkannya ke kode Python yang bersih, efisien, dan siap produksi menggunakan library requests. Sempurna untuk pengembangan API, pengujian, dan integrasi.
Alat kami menangani opsi curl umum ini dan mengkonversinya ke kode Python requests yang sesuai:
J: Kode Python requests yang dihasilkan sepenuhnya kompatibel dengan Python 3.x (3.6 dan di atasnya). Untuk Python 2.x, penyesuaian kecil mungkin diperlukan, meskipun kami merekomendasikan menggunakan Python 3 untuk keamanan dan dukungan fitur yang lebih baik.
J: Kode dasar yang dihasilkan tidak mencakup penanganan kesalahan yang ekstensif. Untuk kode produksi, Anda harus menambahkan blok try/except untuk menangani pengecualian potensial seperti requests.exceptions.RequestException.
J: Library requests memudahkan pemrosesan respons. Gunakan response.json() untuk respons JSON, response.text untuk konten teks, atau response.content untuk data biner.
J: Ya, Anda perlu menginstal library requests jika belum memilikinya. Anda dapat menginstalnya menggunakan pip: pip install requests
J: Untuk unggahan file di Python, Anda perlu menggunakan parameter files dalam metode requests.post(). Konverter kami menangani perintah curl dengan opsi -F
atau --form
dan menghasilkan kode Python yang sesuai menggunakan library requests.
J: Library requests Python membuat penanganan cookie menjadi mudah dengan objek Session. Ketika Anda mengkonversi perintah curl yang menyertakan penanganan cookie (menggunakan -b
atau --cookie
), alat kami menghasilkan kode Python yang mengelola cookie dengan benar menggunakan requests.Session().
J: Sementara curl sangat baik untuk pengujian API command-line yang cepat, Python requests menyediakan pendekatan terprogram yang terintegrasi dengan aplikasi Python Anda. Mengkonversi curl ke Python membantu menjembatani kesenjangan antara pengujian dan implementasi dalam pengembangan Python.
Memahami perintah curl sangat penting untuk pengujian API yang efektif dengan Python. Berikut adalah referensi cepat opsi curl umum yang didukung konverter kami:
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 connectionKonverter Python kami menangani perintah curl kompleks termasuk beberapa header, autentikasi, muatan data, dan berbagai opsi. Cukup tempel perintah curl Anda dan dapatkan kode Python yang bersih dan modern menggunakan library requests.
Saat bekerja dengan library Python requests, ikuti praktik terbaik ini untuk interaksi API yang efisien dan aman:
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 = {}