You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python requests调用Zoopla房源API返回Unknown location问题求助

解决Zoopla API返回错误码7的问题

我一眼就看出问题出在哪啦!你在使用requests.get()的时候,错误地用了data参数来传递查询参数——这就是导致API返回“Unknown location entered”的核心原因。

问题分析

HTTP GET请求的参数应该放在URL的查询字符串里(就是URL末尾?后面的部分),但data参数是为POST请求设计的,它会把数据塞进请求体里。Zoopla的这个property_listings接口是GET接口,只会读取URL里的查询参数,根本不会看请求体里的内容。所以你看似传了area和api_key,但实际上API完全没收到这些参数,自然返回错误码7了。

看你的输出也能佐证这一点:

print(r3.request.url) → https://api.zoopla.co.uk/api/v1/property_listings
print(r3.request.body) → area=Oxford&api_key=xxxxxxxxx

正常的GET请求应该把参数拼在URL后面,但你的URL里没有任何查询参数,参数都跑到请求体里去了,这和IO-Docs里的请求格式完全不一样。

修正后的代码

把data换成params参数,requests库会自动把参数拼接到URL的查询字符串中,和IO-Docs里的请求保持一致:

import requests
api_key = "xxxxxxxx"  # 注意这里最好用字符串引号包裹
r3 = requests.get(
    "https://api.zoopla.co.uk/api/v1/property_listings",
    params={'area':'Oxford','api_key':api_key}
)

验证修正效果

修正后再打印r3.request.url,你会看到URL变成了:
https://api.zoopla.co.uk/api/v1/property_listings?area=Oxford&api_key=xxxxxxxx

这样API就能正确接收到你的参数,应该就能正常返回房源列表啦!

内容的提问来源于stack exchange,提问作者Gianfranco Bombardieri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:36:55