Voici mon code:Python Demandes requests.get API() appeler avec params ne fonctionne pas comme prévu (réponse ne tient pas compte params)
import requests
find_doctors_url = 'http://www.americhoice.com/find_doctor/Ver2/results_doc.jsp'
payload ={"specialty":"ORSU","docproducts":"HOBD,HLOP","planNameDropDoc":"HOBD,HLOP","plan":"uhcwa","zip":"98122","zipradius":"10","findButton":"FIND DOCTOR","specialtyName":"ORTHOPAEDIC SURGERY"}
response = requests.get(find_doctors_url,params=payload)
print(response.url)
print(response.content)
quand j'imprimer response.content, tous Je reçois est:
<!-- NEAADR0179 -Anil Kumar Vutikuri *** End-->
<!--BEGIN SETTING HEADERS TO NO CACHE-->
<!--END SETTING HEADERS TO NO CACHE-->
<!--SET SESSION VALUES FROM URL PARAMETERS-->
<!--END SET SESSION VALUES FROM URL PARAMETERS-->
Quelle est la réponse que vous recevez lorsque vous accédez à: view-source: http://www.americhoice.com/find_doctor/Ver2/results_doc.jsp
Cependant, je cherche à retourner le code html complet reçu lorsque vous accédez à l'URL générée par response.url
Les problèmes semble être que la demande n'est pas l'envoi de la requête GET params correctement
choses que j'ai essayé (sans succès): 1) Demander l'URL complète (codée) au lieu d'utiliser un dictionnaire params 2) Utilisation de la bibliothèque de urllib3 au lieu des demandes bibliothèque
Ah, avant que je ne sois dans la même session, ça arrivait, maintenant quand j'ai redémarré mon navigateur, j'ai un écran vide (toujours une requête de 200). Doit nécessiter des données de session –
@AmiyaDiwan Vous avez peut-être besoin de vous connecter ou d'autre chose avant d'envoyer une requête 'GET'? Dans ce cas, vous devez utiliser 'requests.session' pour conserver la session pendant les différentes requêtes. – Sraw
Merci @Sraw, c'était la solution! –