0

ESPN.com 上的支持论坛建议使用带有 ESPN 标签的 Stack Overflow。这就是我在这里的原因。

我正在尝试使用 ESPN 的 Teams API 获取所有 NCAA 大学篮球队的列表。我从这个 GET 请求开始:

http://api.espn.com/v1/sports/basketball/mens-college-basketball/teams?apikey=MY_API_KEY

这给了我一个团队列表,但其中很多都不见了。例如,没有内布拉斯加州。所以我想也许我需要按会议获取团队列表。所以我在文档中读到了这个:

GROUPS:允许按“组”或部门进行过滤,例如 AL East、NFC South 等。对于组 ID 及其对应值,请向http://developer.espn.com/v1/ {resource}/leagues提出请求. 不适用于高尔夫和网球。

然后我尝试向“ http://developer.espn.com/v1/sports/basketball/mens-college-basketball/leagues?apikey=MY_API_KEY ”发出请求,它说该页面不存在。

这是错误还是用户错误?

4

2 回答 2

1

首先,我认为您忘记sports了资源。尝试这个:

http://api.espn.com/v1/sports/basketball/mens-college-basketball?apikey=MY_API_KEY&leagues

根据文档,这将返回整数到会议的映射。

这让我着迷:

{"name" :"Atlantic Coast Conference","abbreviation" :"acc","groupId" :2,"shortName" :"ACC"}

...以及更多。

然后,一旦你有了它,假设 2 = ACC。你应该能够做到这一点:

http://api.espn.com/v1/sports/basketball/mens-college-basketball?groups=2&apikey=MY_API_KEY'

获得 ACC 男篮的一切。

请记住,API 仍处于测试阶段。

于 2013-10-29T21:58:22.813 回答
0

我不知道如何获取会议列表,但我发现了如何获取丢失的团队。当我发出第一个 get 请求时,默认情况下它限制了我 50 个结果:

http://api.espn.com/v1/sports/basketball/mens-college-basketball/teams?apikey=MY_API_KEY

他们有一个沙箱,您可以在其中使用您的参数,我看到了一个limitandoffset选项:

http://developer.espn.com/io-docs

要获得超过 50 个结果,您必须使用limitoffset参数发出多个请求。

第一次通话: http://api.espn.com/v1/sports/basketball/mens-college-basketball/teams/?limit=50&offset=0&_accept=text%2Fxml&apikey=MY_API_KEY

下次通话: http://api.espn.com/v1/sports/basketball/mens-college-basketball/teams/?limit=50&offset=50&_accept=text%2Fxml&apikey=MY_API_KEY

等等...

于 2013-10-29T22:11:24.700 回答