Python的请求API requests.get()使用参数不工作调用按预期(响应忽略PARAMS)

Python的请求API requests.get()使用参数不工作调用按预期(响应忽略PARAMS)

问题描述:

这里是我的代码:Python的请求API requests.get()使用参数不工作调用按预期(响应忽略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)

当我打印response.content,所有我收到的是:

<!-- 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--> 

这是当你浏览到您收到回应: 查看源代码:http://www.americhoice.com/find_doctor/Ver2/results_doc.jsp

不过,我正在寻找,当你浏览到由response.url生成的URL返回收到完整的HTML

查看源代码:http://www.americhoice.com/find_doctor/Ver2/results_doc.jsp?specialty=ORSU&docproducts=HOBD%2CHLOP&planNameDropDoc=HOBD%2CHLOP&plan=uhcwa&zip=98122&zipradius=10&findButton=FIND+DOCTOR&specialtyName=ORTHOPAEDIC+SURGERY

的问题似乎是,该请求不发送GET查询参数正确

事情我都试过(不成功): 1)请求的完整URL(编码)而不是使用PARAMS字典 2)使用urllib3库,而不是请求库

首先,您提供的查看源网站返回404错误。

二,当您打印response.url时会得到什么?它应该返回完整的url,包括连接的params

+0

啊,之前当我在同一个会话中出现时,现在当我重新启动浏览器时,我得到一个空白屏幕(仍然是200请求)。必须要求一些会话数据 –

+0

@AmiyaDiwan因此,在发送GET请求之前,您可能需要登录或其他东西?在这种情况下,您应该使用'requests.session'在不同的请求期间保持会话。 – Sraw

+0

谢谢@Sraw,那是修复! –