有没有可以调用的API来获取城市的iata代码

问题描述 投票:0回答:2

我正在开发一个包含出发地和目的地字段的旅行网络应用程序,是否有一个我可以调用的API来获取出发地和目的地并返回它们的iata代码?

api geolocation
2个回答
1
投票

您可以使用维基数据和维基数据的SPARQL查询服务来检索IATA代码。

要求是您知道您的出发/目的地城市的维基百科文章的标题。对于大城市来说,这应该不是问题,因为维基百科标题与城市名称一致。但对于较小的地方,您可能需要首先使用 Wikipedia API 来查找正确的文章。

一旦您知道了维基百科标题,您就可以在 https://query.wikidata.org 上运行以下查询:

SELECT DISTINCT ?iata WHERE {
<https://en.wikipedia.org/wiki/Los_Angeles> schema:about ?city .
  ?airport wdt:P31/wdt:P279* wd:Q1248784;
           wdt:P131+ ?city;
           wdt:P238 ?iata
}

如果您是 Wikidata 和 SPARQL 的新手,您可以在 https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/A_gentle_introduction_to_the_Wikidata_Query_Service 找到相关介绍。

简而言之,以上几行执行以下操作:

  1. <https://en.wikipedia.org/wiki/Los_Angeles> schema:about ?city .
    查询链接到给定维基百科文章的维基数据项。

  2. ?airport wdt:P31/wdt:P279* wd:Q1248784; wdt:P131+ ?city;
    查找位于该城市的所有机场。

  3. ?airport wdt:P238 ?iata
    返回该机场的 IATA 代码。

要以编程方式访问数据,请调用 https://query.wikidata.org/sparql?query=...


0
投票

您可以使用此 API 参考来获取城市/机场位置的 IATA 代码。
机场和城市搜索/API 参考

© www.soinside.com 2019 - 2024. All rights reserved.