代码之家  ›  专栏  ›  技术社区  ›  Amiya Diwan

Python请求API请求。带有params的get()调用未按预期工作(响应忽略params)

  •  0
  • Amiya Diwan  · 技术社区  · 7 年前

    这是我的代码:

    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)

    当我打印回复时。内容,我只收到:

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

    然而,我试图返回当您导航到响应生成的url时收到的完整html。url

    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查询参数

    我尝试过的事情(未成功): 2) 使用urllib3库而不是请求库

    1 回复  |  直到 7 年前
        1
  •  1
  •   Sraw    7 年前

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