KeyError:u' x-rate-limit-limit'

时间:2016-11-12 17:57:21

标签: python uber-api

我试图在Python中使用Uber API,但我甚至无法使用基本命令。我按照GitHub页面上建议的代码(https://github.com/uber/rides-python-sdk)。

from uber_rides.session import Session
session = Session(server_token='xxxxxx')

from uber_rides.client import UberRidesClient
client = UberRidesClient(session)
response = client.get_products(37.77, -122.41)
products = response.json.get('products')

当我运行此操作时,我收到以下错误 - KeyError:u' x-rate-limit-limit'

我确实在Uber开了一个开发者帐户,我尝试过使用不同的服务器令牌,但都没有。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

您遇到的问题已通过最新的SDK修补程序(GitHub issue)解决。这是因为Python SDK已升级为使用Uber API的v1.2端点。但是,升级到v1.2后,Uber也弃用了限速标头(X-Rate-Limit-LimitX-Rate-Limit-RemainingX-Rate-Limit-Reset)。较旧的SDK版本仍在使用它们。这是导致你麻烦的原因。

要解决您的问题,请安装最新的SDK版本(> 0.2.7.1)。

答案 1 :(得分:0)

您将获得rate limited。这意味着您经常发送请求,以至于Uber认为您是恶意地进行请求。正如优步所建议的那样,你应该“展开你的请求”,例如使用time.sleep()