Exécuter la commande curl dans Python
Je suis un débutant en python. Je suis en train d'exécuter une boucle de commande à l'intérieur d'un script Python.
Si je le fais dans le terminal, il ressemble à ceci:
curl -k -H "Authorization: Bearer xxxxxxxxxxxxxxxx" -H "hawkular-tenant: test" -X GET https://www.example.com/test | python -m json.tool
J'ai essayé de faire de la recherche, donc je pense que je peux utiliser urllib2 bibliothèque.
Comment puis-je exécuter cette commande?
- StackOverflow n'est pas un
cURL
Pythonrequests
service de conversion. curl.trillworks.com est bien. - Est-il une raison pour laquelle vous avez vous utilisez
curl
, plutôt que de simplement envoyer des requêtes HTTP à partir de l'intérieur de Python?
Vous devez vous connecter pour publier un commentaire.
Essayer cette
C'est un bon moyen de faire cela parce qu'il évite l'utilisation de
os.system
qui peut rendre les choses laides. Mais essayez d'éviter d'appeler des commandes bash à partir de l'intérieur de Python, spécialement dans un cas comme celui-ci où vous pouvez simplement utiliser Les demandes à la place.Je ne recommanderais pas l'appel de
curl
via le shell de l'intérieur de Python. Qu'en esthttplib
?Si vous utilisez Python3, alors vous aurez besoin de swap
httplib
pourhttp.client
Vous pouvez utiliser des sous-processus avec Popen et de communiquer pour exécuter des commandes et récupérer la sortie.
Ensuite, vous placez votre commande comme
Vous pouvez utiliser le
pycurl
bibliothèque.Des Instructions et des exemples ici