我有一个问题希望你能帮助我——我正在尝试使用 ESPN API 来获取 NBA、NFL 和 NHL 未来的比赛时间表/赛程。
从文档中我不清楚我是否可以在不成为 ESPN 合作伙伴的情况下获得这些数据。
我是否有必要成为 ESPN 合作伙伴才能获得这些数据?
谢谢安迪
由于与联盟的许可协议,目前的分数和时间表仅适用于高级合作伙伴。API 的未来版本将为公共开发人员提供访问该数据的机会。
相关页面:http: //developer.espn.com/docs/scores
ESPN 的替代方案是 Hooks Data。该服务为包括 NFL、MBL、NBA、足球、NHL 在内的美国主要运动提供实时 API。
1) 在此处获取 API KEY:https ://www.hooksdata.io/signup?invite=SM4555
2) 订阅足球赛果:
curl -H "Content-type: application/json" -d '{
"query": "SELECT * FROM SoccerGames WHERE away_team.team_name = 'Real Madrid' OR home_team.team_name = 'Real Madrid' AND start_datetime.countdown = 3600"}' 'http://api.hooksdata.io/v1/subscriptions'
3) 可选:添加要获取数据的 Webhooks URL:https ://www.hooksdata.io/webhooks
4) 使用获取端点https://www.hooksdata.io/docs/api/api-reference/#query-datasource拉取数据
5)获取JSON中的所有数据:
{
"matches_count": 1,
"results": [
{
"_entity_type": "SoccerGame",
"_id": "SoccerGame_490555",
"away_score": null,
"away_team": {
"_entity_type": "SoccerTeam",
"_id": "SoccerTeam_86",
"espn_id": 86,
"id": "SoccerTeam_86",
"logo_url": "http://a.espncdn.com/combiner/i?img=/i/teamlogos/soccer/500/86.png&h=500",
"team_name": "Real Madrid"
},
"competition": "Spanish Primera División",
"game_id": "490555",
"home_score": null,
"home_team": {
"_entity_type": "SoccerTeam",
"_id": null,
"team_name": "Leganes"
},
"link": "http://m.espn.go.com/soccer/gamecast?gameId=490555&lang=EN&wjb=",
"start_datetime": {
"countdown": 86970,
"datetime": "2018-02-21T17:45:00+0000",
"timestamp": 1519235100
},
"status": "FUTURE",
"timestamp": 1519235100
}
]}