Convertisseur curl vers Python
Convertissez une commande curl en code Python requests instantanément dans votre navigateur. La commande reste sur votre appareil.
Votre commande curl est convertie en Python localement dans votre navigateur et jamais téléversée, mais évitez de coller de vrais jetons ou identifiants de production dans un quelconque outil.
Envie d'envoyer la requête ? Essayez le Client de requêtes API.
À propos de curl vers Python
Ce convertisseur curl vers python prend une commande curl copiée depuis un terminal, les DevTools de votre navigateur ou la documentation d'une API et la réécrit en un script Python propre construit sur la bibliothèque requests. En tant que convertisseur curl vers requests, il lit les drapeaux comme -X, -H, -d, --data-raw, --json, -u, -b et -G, choisit la bonne méthode HTTP, et opte pour json= pour les corps JSON valides ou data= pour les charges utiles de formulaire afin que l'appel fonctionne dès la première exécution. Il est pratique lorsque vous transposez un test d'API rapide dans un script Python, un notebook ou une intégration backend sans ressaisir les en-têtes à la main. Toute la conversion s'exécute dans votre navigateur, donc la commande curl et les jetons qu'elle contient sont traités localement sur votre appareil et ne sont jamais téléversés.
Fonctionnalités
- Génère un appel requests.request(method, url, ...) avec la méthode HTTP déduite
- Construit un dictionnaire d'en-têtes Python à partir de chaque drapeau -H/--header
- Utilise json= pour les corps JSON valides et data= pour les charges utiles encodées en formulaire
- Formate joliment les corps JSON sous forme de littéral dict Python que vous pouvez modifier
- Mappe -u/--user vers un en-tête Authorization d'authentification basique et gère les cookies, le user-agent et le referer
- Ajoute les données -G/--get à l'URL sous forme de chaîne de requête
- Avertit des drapeaux sans équivalent requests, comme -k et les options de sortie vers fichier
- Copiez le résultat ou téléchargez-le sous request.py en un clic
Comment utiliser curl vers Python
- Collez votre commande curl dans le champ commande cURL.
- Lisez le script Python requests généré dans le panneau de sortie.
- Vérifiez la bannière d'avertissement pour les drapeaux ajustés ou ignorés.
- Cliquez sur Copier, ou téléchargez le script sous request.py.
Exemple
Entrée
curl -X POST https://api.example.com/users \
-H "Content-Type: application/json" \
-d '{"name":"Ada"}'
Sortie
import requests
url = "https://api.example.com/users"
headers = {
"Content-Type": "application/json",
}
payload = {
"name": "Ada"
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.status_code)
print(response.text)
Un corps JSON est passé avec json= pour que requests le sérialise à votre place.
Erreurs courantes et dépannage
- La sortie utilise data= alors que vous attendiez json=. — Envoyez le corps avec --json ou ajoutez -H "Content-Type: application/json" pour que le convertisseur le reconnaisse comme du JSON et passe à json=.
- L'exécution du script lève ModuleNotFoundError: No module named 'requests'. — Installez d'abord la dépendance avec pip install requests ; le code généré cible la bibliothèque tierce requests, et non urllib.
- Un corps JSON ressort sous forme de chaîne entre guillemets au lieu d'un dict Python. — Cela arrive lorsque le corps n'est pas du JSON valide. Corrigez le JSON, ou gardez-le sous forme de chaîne et envoyez-le avec data=.
Foire aux questions
- Comment convertir une commande curl en Python ?
- Collez la commande curl dans le champ de saisie et le convertisseur affiche un script Python requests à droite que vous pouvez copier ou télécharger sous request.py.
- Cela génère-t-il du code pour la bibliothèque requests ou pour urllib ?
- Il cible la populaire bibliothèque requests et émet un appel requests.request(method, url, ...). Installez-la avec pip install requests avant d'exécuter le script.
- Quand le convertisseur utilise-t-il json= plutôt que data= ?
- Il utilise json= lorsque le corps est du JSON valide (envoyé avec --json ou un Content-Type JSON) pour que requests sérialise le dict, et data= pour les corps encodés en formulaire ou les chaînes brutes.
- Comment une valeur d'authentification basique curl -u est-elle gérée dans la sortie Python ?
- Une valeur -u ou --user est encodée en base64 dans un en-tête Authorization: Basic dans le dictionnaire d'en-têtes, correspondant à ce que curl envoie sur le réseau.
- Ma commande curl est-elle téléversée lorsque je la convertis en Python ?
- Non. La conversion curl vers python s'exécute entièrement dans votre navigateur, donc la commande et les identifiants qu'elle contient restent sur votre appareil.
Outils associés
- curl vers Go — Convertissez une commande curl en code Go net/http.
- curl vers PHP — Convertissez une commande curl en script PHP avec l’extension cURL.
- curl vers Node.js — Convertissez une commande curl en script Node.js basé sur axios.
- cURL vers Fetch — Convertit une commande curl en un appel fetch() JavaScript.
- Client API — Envoyez des requêtes HTTP, créez en-têtes et paramètres et inspectez les réponses ; conserve vos 25 dernières.
- Analyseur d’URL — Décompose une URL en ses parties et liste les paramètres de requête.
Tous les outils ArrayKit