Convertir curl en Python

curl2code convertit instantanément n'importe quelle commande curl en code Python propre à l'aide de la célèbre bibliothèque requests. La conversion s'exécute entièrement dans votre navigateur via WebAssembly — vos données ne quittent jamais votre appareil. Si vous travaillez avec TypeScript sur le frontend, consultez notre convertisseur curl vers TypeScript. Pour le JavaScript côté serveur, voir curl vers Node.js. Vous trouverez ci-dessous des exemples pratiques couvrant les scénarios HTTP les plus courants.

Comment copier curl depuis votre navigateur

  1. 1

    Ouvrir les DevTools

    Appuyez sur F12 ou Ctrl+Shift+I pour ouvrir les outils de développement de votre navigateur.

  2. 2

    Aller dans l'onglet Network

    Cliquez sur l'onglet Network et effectuez l'action qui déclenche la requête HTTP.

  3. 3

    Copier comme cURL

    Faites un clic droit sur la requête → CopyCopy as cURL. Collez-la ensuite ci-dessus.

Foire Aux Questions

Qu'est-ce que Python Requests ?

Python Requests est la bibliothèque client HTTP la plus populaire pour Python avec plus de 50 000 étoiles sur GitHub. Elle fournit une API élégante et "pythonique" pour effectuer des requêtes HTTP, gérer les sessions, les cookies et l'authentification. Elle prend en charge nativement l'analyse JSON, le pooling de connexions et le décodage automatique du contenu. Installez-la avec pip install requests. C'est la bibliothèque par défaut utilisée par curl2code pour les conversions Python.

Requests vs http.client — lequel dois-je utiliser ?

Requests est recommandé pour la plupart des cas d'utilisation en raison de son API simple, de l'analyse JSON automatique et de la gestion intégrée des sessions. http.client fait partie de la bibliothèque standard Python et ne nécessite aucune installation, ce qui le rend adapté aux environnements minimaux. Pour une simplicité similaire dans d'autres langages, consultez notre convertisseur curl vers Ruby ou notre convertisseur curl vers Go.

Comment gérer l'authentification dans Python Requests ?

Passez un en-tête Authorization avec votre jeton pour l'authentification Bearer, ou utilisez requests.auth.HTTPBasicAuth(user, pass) pour l'authentification Basic. curl2code détecte automatiquement les schémas d'authentification, y compris -u user:pass et -H 'Authorization: Bearer ...'.

Comment envoyer des données de formulaire multipart avec Python ?

Utilisez le paramètre files : requests.post(url, files={ 'file': open('doc.pdf', 'rb') }). Pour des champs de formulaire supplémentaires, utilisez data simultanément. curl2code gère automatiquement les drapeaux -F.

Comment gérer les erreurs et les tentatives ?

Utilisez response.raise_for_status() pour lever des exceptions sur les codes 4xx/5xx. Enveloppez le tout dans un bloc try/except capturant requests.exceptions.RequestException. Pour les tentatives (retries), utilisez urllib3.util.Retry avec un adaptateur de Session.

Comment effectuer des requêtes HTTP asynchrones en Python ?

requests est synchrone. Pour le HTTP asynchrone, utilisez aiohttp ou httpx (qui propose des API synchrones et asynchrones avec une interface compatible requests). Pour les scénarios à haute concurrence, les clients asynchrones offrent un débit nettement supérieur.

Comment définir les délais d'attente et le pooling de connexions ?

Définissez toujours des délais d'attente : requests.get(url, timeout=(3.05, 27)). Pour le pooling de connexions, utilisez requests.Session() qui réutilise les connexions TCP. Les options --connect-timeout et --max-time de curl correspondent à ces paramètres.

Comment configurer un proxy avec Python Requests ?

Passez un dictionnaire proxies : { 'https': 'http://proxy:8080' }. Pour SOCKS, installez requests[socks]. La bibliothèque respecte également les variables d'environnement HTTP_PROXY / HTTPS_PROXY. curl2code convertit automatiquement -x et --proxy.

Comment envoyer une requête POST avec un corps JSON en Python ?

Convertissez une commande curl POST comme curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL en Python en utilisant curl2code. Le code généré utilise requests.post(url, json={'key': 'value'}). curl2code détecte automatiquement les drapeaux -d/--data avec du contenu JSON et définit l'en-tête Content-Type approprié dans le code Requests.

Comment ajouter une autorisation par jeton Bearer en Python ?

Passez curl -H "Authorization: Bearer YOUR_TOKEN" URL à curl2code et il générera le code Requests avec l'en-tête d'authentification : headers={'Authorization': 'Bearer YOUR_TOKEN'}. curl2code détecte les jetons Bearer à partir des drapeaux -H "Authorization: Bearer ..." et --oauth2-bearer. Pour le Basic auth, utilisez -u user:pass.

Comment définir l''en-tête Content-Type en Python ?

curl2code convertit curl -H "Content-Type: application/json" URL en code Requests avec l'en-tête approprié : headers={'Content-Type': 'application/json'}. Pour les données -d, curl utilise par défaut application/x-www-form-urlencoded ; pour les téléchargements de formulaires -F, il utilise multipart/form-data. curl2code associe chacun à l'API Requests correcte.

Comment convertir une commande curl en code Python ?

Collez votre commande curl dans curl2code et sélectionnez Python. L'outil analyse tous les drapeaux — -X (méthode), -H (en-têtes), -d (données), -u (authentification), -F (formulaire), les cookies, et plus encore — et génère un code Python Requests propre. La conversion s'exécute localement dans votre navigateur via WebAssembly, ainsi vos clés API et vos données restent privées. Vous pouvez également choisir http.client comme bibliothèque alternative.

Liens utiles

Guides curl

Convertir curl vers d'autres langages