Bonjour,
je suis débutant en python et j'ai du mal sur un sujet.
J'interroge une API pour récupérer une liste de certificats ssl, je m'y connecte bien, et je souhaite récupérer des informations qui sont dans un tableau.
J'y arrive bien en bash mais en python, je bloque.
Voici mon code en python
Mon "printdatas" est correct, a les bonnes valeurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 url = 'https://XXX.com/REST/v1/ordervalide/' login = 'login' password = 'password' showall = 'true' datas = {"auth": {"username": login,"password": password},"showAll": showall} print(datas) ## on envoie la requete à l'API listecertificats = requests.post(url, data=datas) print(listecertificats.status_code) print(listecertificats.content) print(listecertificats.text)
J'ai bien un code retour 200.
Par contre mon listecertificats.content me retourne ceci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part b''
et mon listecertificats.text ne me retourne rien. Je ne comprends pas pourquoi j'ai cela.
Et par conséquent, je ne peux pas récupérer les informations pour ensuite les parser car ce que je souhaite faire ensuite, c'est une boucle for pour afficher une à une les infos et afficher uniquement ce que je souhaite selon un critère.
Quand je suis en bash :
J'ai bien la liste qui me retourne ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part curl -X POST -H "Content-Type: application/json" -d '{"auth":{"username":"login","password":"password"},"showAll":true}' https://XXX.com/REST/v1/ordervalide/ | jq
Que me manque-t-il en python pour que cela fonctionne ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 { "orders": [ { "deal_number": "123456", "CN": "xx", "CertExpire": "2021-09-19 23:59:59", "company_address1": "", "etat": "En cours de validité", "logiciel": "Apache2" }, { "deal_number": "123456", "CN": "xx", "CertExpire": "2021-09-19 23:59:59", "company_address1": "", "etat": "En cours de validité", "logiciel": "Apache2" }, .... ] }
Merci par avance pour votre aide.
Partager