魔法の海藻に基本的なAPIを提供します。
注:7/8/2022の時点で、Magicseaweedが新しいAPIキーを配布していないことが報告されました。このパッケージは、APIキーを持っている人には引き続き機能します。 Magicseaweedは、いつ、またはAPIキーの配布を開始するか、または再び説明していません。詳細については、以下の「APIキーを取得する」セクションを参照してください。
pip install magicseaweed
このパッケージを使用するには、Magic Seaweed APIに精通している必要はありません。参照のために、彼らのAPIドキュメントはこちらで見つけることができます:Magic Seaweed Docs。このパッケージは、時間に基づいてデフォルトのAPIインタラクションを提供します。
ラッパーを使用するには:
import magicseaweed
api_key = os . environ . get ( 'MSW_API_KEY' )
ponce_id = 348
bethune_id = 371
ponce_forecast = MSW_Forecast ( api_key , ponce_id )
ponce_now = ponce_forecast . get_current ()
print ( ponce_now . attrs )
bethune_forecast = MSW_Forecast ( api_key , bethune_id )
bethune_future = bethune_forecast . get_future ()
print ( bethune_future . summary )
for forecast in bethune_future . data :
print ( forecast . attrs )
print ( forecast . get_chart_url ( 'swell' ))
MSW_forecast()
クラスには、いくつかのオプションのパラメーターがあります。 APIキーとスポットIDのみが必要なパラメーターです。
forecast.DataBlockType()
を使用します。 current()
、 future()
、 all()
、 manual()
、method fone ys now your dature。
current()
は単一の予測を返します。他のすべての方法は、予測のブロックを返します。
future()
all()
manual()
各Datablockの.data属性は、予測オブジェクトのリストです。
ponce_future = ponce_forecast . get_future ()
for forecast in ponce_future . data :
print ( forecast . summary )
API応答の例:
[ {
timestamp : 1366902000 ,
localTimestamp : 1366902000 ,
issueTimestamp : 1366848000 ,
fadedRating : 0 ,
solidRating : 0 ,
swell : {
minBreakingHeight : 1 ,
absMinBreakingHeight : 1.06 ,
maxBreakingHeight : 2 ,
absMaxBreakingHeight : 1.66 ,
unit : "ft" ,
components : {
combined : {
height : 1.1 ,
period : 14 ,
direction : 93.25 ,
compassDirection : "W"
} ,
primary : {
height : 1 ,
period : 7 ,
direction : 83.37 ,
compassDirection : "W"
} ,
secondary : {
height : 0.4 ,
period : 9 ,
direction : 92.32 ,
compassDirection : "W"
} ,
tertiary : {
height : 0.3 ,
period : 13 ,
direction : 94.47 ,
compassDirection : "W"
}
}
} ,
wind : {
speed : 10 ,
direction : 85 ,
compassDirection : "W" ,
chill : 15 ,
gusts : 13 ,
unit : "mph"
} ,
condition : {
pressure : 1020 ,
temperature : 18 ,
unitPressure : "mb" ,
unit : "c"
} ,
charts : {
swell : "http://cdn.magicseaweed.com/wave/750/1-1366902000-1.gif" ,
period : "http://cdn.magicseaweed.com/wave/750/1-1366902000-2.gif" ,
wind : "http://cdn.magicseaweed.com/gfs/750/1-1366902000-4.gif" ,
pressure : "http://cdn.magicseaweed.com/gfs/750/1-1366902000-3.gif" ,
sst : "http://cdn.magicseaweed.com/sst/750/1-1366902000-10.gif"
}
} ]
このクラスは、MSW APIと対話するためのものです。関数を使用して、さまざまな期間にわたってポイントまたは一連のデータを取得できます。
パラメーター:
方法
start=dt.now().timestamp()
およびend=dt.now().timestamp()
でAPIを呼び出した場合、MSWが提供する予測を表す単一のデータポイントを返します。 ForecastDatapointを返します。datetime.now().timestamp()
datetime.now().timestamp()
時間の経過に伴う予測に関するデータと、MagicseaweedからのHTTP応答が含まれています。
属性
特定の時間に予測に関するデータと、MagicseaWeedからのHTTP応答が含まれています。
データポイントには多くの属性がありますが、それらのすべてが常に利用可能であるわけではありません。一般的に使用されるもののいくつかは次のとおりです。
属性
方法
ForecastDataPoint属性と属性の説明の完全なリストについては、MagicseaWeedのドキュメントのテーブルをご覧ください。注:MSW APIはdot.notationでフィールドを受け入れますが、snake_caseを使用して、これらの属性にアクセスします。
リクエストをプル歓迎。
Magicseaweed.comと提携していません。あなた自身の責任で使用してください。
魔法の海藻APIは現在ベータ版です。 APIキーを取得するには、こちらで入手可能な手順に従ってくださいサインアップ