Tukar arahan curl kepada kod Python - Jana kod Python requests sedia untuk digunakan 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 arahan curl biasa yang boleh anda tukar kepada kod 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
Pustaka Python requests adalah cara yang berkuasa dan elegan untuk membuat permintaan HTTP. Berikut adalah beberapa corak Python requests yang biasa:
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 arahan curl anda → Tampal ke dalam kotak input → Dapatkan kod Python requests yang ditukar
Penukar lanjutan kami menyokong arahan curl kompleks dan menterjemahkannya kepada kod Python yang bersih, cekap, dan sedia untuk produksi menggunakan pustaka requests. Sempurna untuk pembangunan API, ujian, dan integrasi.
Alat kami mengendalikan pilihan curl biasa ini dan menukarkannya kepada kod Python requests yang sesuai:
J: Kod Python requests yang dihasilkan serasi sepenuhnya dengan Python 3.x (3.6 dan ke atas). Untuk Python 2.x, penyesuaian kecil mungkin diperlukan, walaupun kami mengesyorkan menggunakan Python 3 untuk sokongan keselamatan dan ciri yang lebih baik.
J: Kod asas yang dihasilkan tidak termasuk pengendalian ralat yang luas. Untuk kod produksi, anda harus menambah blok try/except untuk mengendalikan pengecualian yang mungkin seperti requests.exceptions.RequestException.
J: Pustaka requests memudahkan pemprosesan respons. Gunakan response.json() untuk respons JSON, response.text untuk kandungan teks, atau response.content untuk data binari.
J: Ya, anda perlu memasang pustaka requests jika anda belum mempunyainya. Anda boleh memasangnya menggunakan pip: pip install requests
J: Untuk muat naik fail dalam Python, anda perlu menggunakan parameter files dalam kaedah requests.post(). Penukar kami mengendalikan arahan curl dengan pilihan -F
atau --form
dan menjana kod Python yang sesuai menggunakan pustaka requests.
J: Pustaka Python requests memudahkan pengendalian kuki dengan objek Session. Apabila anda menukar arahan curl yang termasuk pengendalian kuki (menggunakan -b
atau --cookie
), alat kami menjana kod Python yang menguruskan kuki dengan betul menggunakan requests.Session().
J: Walaupun curl sangat baik untuk ujian API baris arahan yang cepat, Python requests menyediakan pendekatan programatik yang berintegrasi dengan aplikasi Python anda. Menukar curl kepada Python membantu merapatkan jurang antara ujian dan pelaksanaan dalam pembangunan Python.
Memahami arahan curl adalah penting untuk ujian API yang berkesan dengan Python. Berikut adalah rujukan pantas pilihan curl biasa yang disokong oleh penukar 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 connectionPenukar Python kami mengendalikan arahan curl kompleks termasuk pelbagai pengepala, pengesahan, muatan data, dan pelbagai pilihan. Hanya tampal arahan curl anda dan dapatkan kod Python yang bersih dan moden menggunakan pustaka requests.
Apabila bekerja dengan pustaka Python requests, ikuti amalan terbaik ini untuk interaksi API yang cekap dan selamat:
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 = {}