NOAA全球气象站数据的网站

和大家分享一个不用任何权限就可以下载逐小时地面观测气象数据的网站
http://gis.ncdc.noaa.gov/map/viewer/#app=clim&cfg=cdo&theme=hourly&layers=1&node=gis
简介:这个是美国NOAA的一个专门下载全球气象站数据的网站,不需要注册,不需要项目权限就可以,唯一要求就是你能够连接互联网就行。基本上中国所有县级气象站都有,还有其他国家的。三个小时一次的观测,气温降水等。可以克服“中国气象科学共享服务网”对权限的限制。也不就不用花大把的钱去气象局水文局买数据了。还有这个资料更新快,到二十天前,例如今天是20日,上面九月底的资料都出来了,资料比中国气象科学数据共享服务网的更新,更及时。台站资料也更全面,包括国际交换站、基本站等,还有民国时期的气象资料。

### NOAA气象站数据API下载及相关操作 NOAA(美国海洋和大气管理局)通过其公开的API接口提供了丰富的气象数据资源,允许用户查询、筛选并下载所需的历史气象数据。以下是关于如何利用NOAA气象站数据API进行数据下载的相关说明。 #### 1. 使用NOAA API获取站点信息 NOAA 提供了两种主要的数据集:Global Surface Summary of the Day (GSOD) 和 Integrated Surface Database (ISD)[^2]。这些数据集涵盖了全球范围内的气象观测记录,包括但不限于温度、降水量、气压等参数。 为了获取具体站点的信息,可以先通过API请求来检索可用的国家和地区列表以及对应的气象站点详情。例如: ```python import requests def get_noaa_stations(): url = "https://www.ncei.noaa.gov/access/services/data/v1?dataset=global-summary-of-the-day&stations=true" response = requests.get(url) if response.status_code == 200: stations_data = response.json() return stations_data else: raise Exception(f"Failed to fetch data, status code {response.status_code}") print(get_noaa_stations()) ``` 上述代码展示了如何通过`requests`库向NOAA发送HTTP GET请求以获取气象站点列表[^2]。 #### 2. 查询特定时间段内的气象数据 如果目标是获取某个特定区域或时间段内的历史气象数据,则需进一步指定日期范围和其他过滤条件。例如,在广东省范围内筛选出具备2018年9月16日至9月18日连续天有效数据的站点[^3]。此过程通常涉及以下几个步骤: - **读取站点元数据**:从提供的CSV文件(如 `ish-history.csv`)中加载所有站点的基础属性; - **地理空间匹配**:基于经纬度坐标判断哪些站点位于目标区域内; - **时间序列验证**:确认所选站点在此期间是否存在完整的观测记录。 对于已知符合条件的目标站点,可通过如下方式发起具体的天气要素提取任务: ```bash wget --no-check-certificate 'https://www.ncei.noaa.gov/pub/data/noaa/<year>/<usaf-wban>-<year>.gz' gunzip <usaf-wban>-<year>.gz ``` 其中 `<year>` 表示要抓取数据所属年度,而 `<usaf-wban>` 则对应唯一标识某一站点的身份编码组合形式。 #### 3. 后续数据解析与预处理 由于原始压缩包中的内容并非标准结构化表格样式,因此还需要借助专门开发工具完成最终转换工作。官方推荐采用 Java 编写的 ISH 解码器程序实现这一目的;当然也可以自行设计 Python 脚本来简化流程。下面给出一段示范性的自动化批量处理器定义片段: ```python from pathlib import Path def deal_with_download_file(root_source): root_path = Path(root_source) for file in root_path.glob('*.gz'): output_name = str(file).replace('.gz', '.out') command_line = f'java -classpath . ishJava {file} {output_name}' # 执行 shell 命令部分省略... # 示例调用方法 deal_with_download_file('/path/to/downloaded/files/') ``` 以上即完成了整个从在线服务端拉取到本地存储再到初步清洗阶段的工作链条描述。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值