7 个稳定版本
1.1.1 | 2024年5月19日 |
---|---|
1.0.4 | 2024年5月19日 |
1.0.3 | 2024年5月18日 |
1.0.2 | 2024年5月16日 |
1.0.1 | 2024年5月14日 |
在 命令行工具 中排名第 40
每月下载量 220 次
54KB
897 行
nowa
版本 1.1.1
nowa
是一个小巧、快速的命令行应用程序,从美国 国家气象服务 获取天气数据。
快速入门
[以下为构建和安装 nowa
的说明]
首先,确定您想查看天气信息的地点的坐标(网上有很多工具可以做到这一点)。一旦您有了这些坐标,您就可以让 nowa
列出附近的气象站
$ nowa --list-stations 65.846004,-150.725719
Available Weather Stations for 65.846,-150.725719
ID Location
---- --------
PATA: Tanana, Calhoun Memorial Airport
PABT: Bettles, Bettles Airport
PAIM: Utopia Creek, Indian Mountain LRRS Airport
PANN: Nenana Municipal Airport
PAFA: Fairbanks, Fairbanks International Airport
PAMH: Minchumina, Minchumina Airport
PAIN: McKinley Park, McKinley National Park Airport
PFYU: Fort Yukon, Fort Yukon Airport
[...]
现在,这是阿拉斯加尤克昂-科尤库克人口普查区(该国人口最少的地区之一)的中间位置。尽管如此,该地区有超过一百个气象站。
让我们看看 Elfin Cove 机场。我们可以使用其站号(PAEL
)来询问 NWS API 提供哪些产品
$ nowa --list-products --station-id PAEL
Forecast Office Products Available for PAEL:
Code Description
---- -----------
AFD Area Forecast Discussion
CAP Common Alerting Protocol
CLM Climatological Report (Monthly)
CWF Coastal Waters Forecast
FWF Routine Fire Wx Fcst (With/Without 6-10 Day Outlook)
HML AHPS XML
NOW Short Term Forecast
OFF Offshore Forecast
PFM Point Forecast Matrices
RER Record Report
RR3 Hydro-Met Data Report Part 3
RRS HADS Data
[...]
(注意 -i/--station-id 开关。这对于许多 nowa
操作是必需的)
该站有大量数据产品,包括离岸水域预报(OFF)。所以,让我们获取这个产品
$ nowa --product OFF -i PAEL
Offshore Forecast
000
FZAK67 PAJK 021145
OFFAJK
Offshore Waters Forecast
National Weather Service Juneau AK
345 AM AKDT Wed Jun 2 2021
Offshore waters forecast for Gulf of Alaska east of 144W
Wind forecasts reflect the predominant speed and direction
expected. Sea forecasts represent the average of the highest
one-third of the combined windwave and swell height.
[...]
构建和安装 nowa
nowa
是用 Rust 编写的,因此需要在您的机器上安装 Rust 编译器。
假设您已经处理好这一点,它可能看起来像这样
$ cargo install nowa
二进制文件的安装位置取决于您的本地配置,但 cargo
非常聪明,可能可以 将其安装到您想要的位置。
用法
nowa
可以显示通过 NWS API 提供的任何数据产品。如果您知道特定地区的站点的 ID、您要显示的数据产品以及该数据产品在该站点上有提供,则 nowa
可以显示它。并且,除了您感兴趣的地点的经纬度之外,所有这些信息都可以使用 nowa
本身确定。
但是 nowa
还提供了一系列方便的选项,用于获取常见的(并且大多是通用的)信息,包括当前条件、7天预报、活动警报以及科学预报讨论。所以,如果您只想查看我家乡(林肯,内布拉斯加州)的当前条件
$ nowa --conditions -i KLNK
这将给出格式化的输出
Current conditions at Lincoln, Lincoln Municipal Airport (KLNK)
40° 49' 52" N, -96° 45' 52" W
Summary: Clear
Temperature: 32.0°F
Dewpoint: 15.1°F (dry)
Relative Humidity: 0.0%
Wind: From the S (180°) at 5.8 mph
Pressure: 1022.4 mb
Visibility: 8.0 mi
同样,请求七天的预报也会给出
$ nowa --forecast -i KLNK
查看是否有任何活动警报
$ nowa --alerts -i KLNK
并且,您可以通过“科学预报讨论”来完全沉浸在技术中
$ nowa --discussion -i KLNK
一旦您知道了某个站点上可用的产品,就可以很容易地设置特定产品的别名,例如危险天气展望(HWO)、空气质量报告(AQI)、昨天的降水量(CLI)等等。
此外:通过添加 --json 开关,您可以显示 任何 NWS 产品为原始 JSON。例如
$ nowa --json --conditions -i KLNK
这比您想象的更有用,因为从 API 获取有用的信息通常需要遵循多个嵌入链接; nowa
会为您做所有这些。当然,一旦您有了“原始”的 JSON,您可以将它通过管道发送,导入到另一个工具等。
许可证
nowa
由 Stephen Ramsay(sramsay{at}protonmail{dot}com)编写和维护。
本程序是免费软件:您可以在自由软件基金会的 GNU 通用许可证的条款和条件下重新分发和/或修改它,许可证版本为 3 或更高版本。
本程序是在希望它有用的前提下分发的,但没有任何保证;甚至没有关于其适销性或特定用途的暗示性保证。有关详细信息,请参阅 GNU 通用许可证。
NOAA/NWS 数据属于公共领域。然而,NOAA/NWS 数据的使用者应熟悉其 免责声明 中规定的条款和条件。
nowa
既未获得美国国家海洋和大气管理局(NOAA)或国家气象服务(NWS)的认可,也与它们没有任何形式的关联。
最后修改日期:2024-05-19T18:16:53:-0500
依赖关系
~7–9.5MB
~194K SLoC