跳转到主要内容

NOAA潮汐表的轻量级API

项目描述

Tidetable是一个Python模块,用于从NOAA潮汐与流速网站下载年度潮汐预测表。

使用pip install tidetable进行安装。

基础

首先,从NOAA潮汐与流速网站获取您的潮汐站点的站ID。

然后,使用get方法下载表格。这返回一个TideTable对象,它只是一个带有一些附加元数据参数的list

在此示例中,我们使用缅因州的一个潮汐站

>>> import tidetable
>>> table = tidetable.get(8416092)
>>> table
tidetable.TideTable(stationid=8416092)
>>> table[0]
{'pred_cm': 149.0, 'datetime': datetime.datetime(2014, 12, 31, 3, 44), 'pred_ft': 4.9, 'high_low': 'H'}

TideTable对象的元数据包括一些位置数据,有关父潮汐站的信息和错误间隔

>>> table.stationname, table.state
('Monhegan Island', 'ME')
>>> table.datum
'MLLW'
>>> table.referencetostationid
'8418150'
>>> table.timeoffsetlow, table.timeoffsethigh
('-9', '-13')

时间范围

默认情况下,NOAA返回当前年份的潮汐预测表。要获取最近几年或未来的年份,请使用year关键字参数。似乎在过去大约五年和未来两年内都有可用。无法获取比完整年份更小的预测时间范围。

>>> import tidetable
>>> table = tidetable.get(8416092, year=2016)
>>> table
tidetable.TideTable(stationid=8416092)
>>> table[4]['datetime']
datetime.datetime(2016, 1, 1, 3, 39)

(注意,返回的前几行可能属于上一年。)

编写

《潮汐表》对象具有一个write_csv方法。它接受文件名或任何文件类似对象。

import tidetable
table = tidetable.get(8416092)
table.write_csv('tide_table.csv')

时区

如您所见,《潮汐表》是一个字典列表,每个字典都包含一个datetime,一个以英尺和厘米为单位的预测,以及一个高低标志。预测相对于基准面,在本例中是MLLW,即平均低潮位。请注意,MLLW与海平面不同。

默认情况下,datetime是本地时间,可能是标准时间或夏令时。使用time_zone关键字参数获取GMT或本地标准时区的时间。潮汐表始终返回无知的datetime对象。

使用以下常量指定时区:tidetable.GMT、tidetable.LOCAL_STANDARD_TIME、tidetable.LOCAL_TIME。

>>> import tidetable
>>> table = tidetable.get(8416092, time_zone=tidetable.GMT)
>>> table[0]['datetime']
datetime.datetime(2014, 12, 31, 0, 15)

(注意与第一个例子中的datetime的区别,第一个例子中的datetime是东部标准时间)

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

此版本没有源分布文件。请参阅有关生成分布存档的教程。

构建分布

tidetable-0.1.2-py3-none-any.whl (7.4 kB 查看哈希值)

上传 Python 3

tidetable-0.1.2-py2-none-any.whl (7.4 kB 查看哈希值)

上传 Python 2

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面