
Python与Ollama的开发案例
在航空数据获取与空中交通监测领域,及时掌握飞行动态对研究机构、航空从业者和开发者都至关重要。OpenSky 空中交通数据 API 提供了丰富而实时的全球航班与飞行器信息,包括航班位置、航迹、高度、速度等关键数据,开发者可以轻松将其集成到应用、研究系统或数据分析平台中。通过该 API,用户不仅能够进行实时空域监控,还可开展历史数据分析,从而支持空中交通研究、航班追踪及航空安全评估。本文将指导你如何获取 OpenSky 空中交通数据 API 密钥,并进行初步的可用性测试,同时探讨在使用过程中需要注意的事项。
获取OpenSky 空中交通数据 API密钥的过程相对简单,只需几个步骤即可完成:
1.访问 幂简平台中 OpenSky 空中交通数据服务商:https://www.explinks.com/provider/uid202410182702226a9988
点击右侧访问官网,点击官网右上角注册或登录。
2.登录成功以后会自动进入控制台页面,在右下方 API客户端这里点击 创建并下载凭证。
3.点击以后会得到一个 credentials.json文件,在文件中可以看到 client_id、client_secret。
4.获取Token,grant_type为client_credentials,client_id和client_secret可以从刚才下载的文件中得到。
请求地址:https://auth.opensky-network.org/auth/realms/opensky-network/protocol/openid-connect/token
可以看到图中已经拿到Token,接下来就可以去请求接口了。
在获取API密钥后,进行可用性测试是确保其正常工作的重要步骤。以下是使用curl进行测试的一个案例
以下接口为OpenSky 空中交通数据接口中 查询包含时间和飞机 接口。
输入:
curl --location --request GET 'https://opensky-network.org/api/states/all?time=1755234000&icao24=3c6444' \
--header 'User-Agent: Apifox/1.0.0 (https://apifox.com)' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer 你的Token' \
--header 'Accept: */*' \
--header 'Host: opensky-network.org' \
--header 'Connection: keep-alive'
输出:
结果以 JSON 格式返回,包含了某一时刻的飞机的详细信息,例如飞机的 24 位 ICAO 地址、位置更新时间、几何高度、位置来源等等。
{
"time": 1458564121,
"states": [
[
"3c6444",
"DLH9LF ",
"Germany",
1458564120,
1458564120,
6.1546,
50.1964,
9639.3,
false,
232.88,
98.26,
4.55,
null,
9547.86,
"1000",
false,
0
]
]
}
在使用OpenSky 空中交通数据API搭建应用时,除了获取和测试API密钥外,还需考虑以下因素:
您必须对本页上的所有 API 请求进行身份验证。您可以使用您的 API 令牌进行身份验证:
“Authorization: Bearer $TOKEN”
一个 OpenSky 账户的用户必须使用一个有效的 OpenSky API 客户端来访问 API。OpenSky 账户的用户限制如下:
匿名用户是指未使用凭据访问 API 的用户。匿名用户的限制如下:
在申请和使用 OpenSky 空中交通数据 API密钥过程中,你可能会遇到以下常见问题:
我们的数据来自哪里?
OpenSky 网络使用的技术是自动相关监视-广播(ADS-B)。ADS-B 允许飞机使用 GPS 确定其位置和速度。随后,飞机会定期在 1090 MHz 的无线电频率上广播这些信息和其他数据。为了在全球范围内获取这些宝贵的信息,我们运营了一个遍布全球的 ADS-B 接收机网络,并通过互联网收集数据。我们的接收机由私人人士、工业合作伙伴以及学术和政府机构赞助或托管。
我上传到 OpenSky 的数据会怎样处理?
我们会在我们的服务器上存储您接收器接收到的所有数据。这些数据包括接收时间戳、接收器的位置以及原始 ADS-B 消息。我们使用这些数据来生成实时视图并计算统计信息。此外,我们还会将这些数据与研究人员和其他网络共享。有关他们如何使用这些数据的示例,请参阅出版物列表。请注意:如果您在接收器设置中未勾选“匿名化”框(请参见我的 OpenSky 接收器配置文件),接收器的位置将在共享的原始数据中显示。如需更多详细信息,请参阅我们在 github 上提供的数据样本,并查看我们的使用条款 。如果您有 不同的接收器设备,或您的组织希望与我们共享其他数据,请联系我们,我们可以与您共同制定解决方案。 或者,您的组织希望与我们共享其他数据,请联系我们,我们可以与您共同制定解决方案。
有实时 API 吗?我可以将其用于我的应用程序吗?
有的。我们为 Python 和 Java 提供了语言绑定。该 API 还支持检索 历史数据(虽然有一定的限制!)你可以自由使用 API 进行个人和 非营利用途,但任何商业使用需获得我们的许可。 包括但不限于使用 API 销售应用程序、网站上投放广告 使用 API 的应用程序,以及任何营利性商业实体的内部使用 这超越了对数据质量的测试和评估。如果遇到任何问题,请告知。 有关 API 的问题、bug 报告或想法,请使用我们的论坛告诉我们。
为什么地图上找不到应该存在的飞机?
如果你认为一架飞机应该在某个位置但没有出现,主要有两个原因。a) 它可能在我们的覆盖范围之外(太低,附近没有传感器)。b) 它可能不支持 ADS-B 或 FLARM,只支持 Mode S,这只能提供高度信息而不能提供位置信息。在这种情况下,它应该出现在 Explorer 的搜索框中,但自然无法在地图上显示。由于我们目前不提供多边测距(MLAT)服务,这也会影响一些军用飞机。请注意,那些真的不想被跟踪的军用飞机会完全关闭其应答器。无论哪种情况,这些飞机都不会被过滤。
在获得OpenSky 空中交通数据 API密钥之后,即可开启API接口对接,本文整理了多篇使用OpenSky 空中交通数据 API的案例,帮助读者更有效地使用OpenSky 空中交通数据 API:
按飞机查看航班、机场的到达航班、机场出发航班、按飞机跟踪查询
问题1: 什么是幂简集成平台?
幂简集成是蜜堂有信在2023年打造的一款SAAS产品,建设着国内最全的API平台,为开发者提供全面、高效、易用的API集成管理方案,一站搜索、试用、集成国内和国外API。让用户在AI时代全方位接入互联网,用API连接一切服务和算力,实现价值倍增。
问题2:如何找到OpenSky 空中交通数据 API
幂简API平台可以通过以下两种方式找到所需API:通过关键词搜索API(例如,输入’OpenSky 空中交通数据 API‘这类品类词,更容易找到结果)、或者从API hub分类页进入寻找。
问题3:OpenSky 空中交通数据 API的替代品有哪些?
市场上存在免费、付费两种替代者
例如
aviationstack-实时航班追踪API – 免费且强大
更多竞品可以在OpenSky 空中交通数据找到。
本文详细介绍了如何获取和测试OpenSky空中交通数据API密钥,提供了使用curl进行可用性验证的示例,并阐述了在应用中使用API时需要注意的身份验证方式、用户和匿名访问限制等关键因素。同时,文章还解答了API使用过程中常见问题,介绍了数据来源及处理方式,并整理了进阶接口使用案例和可替代的航空数据API,为开发者在搭建和优化基于OpenSky的应用提供了全面的指导与参考。