メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

ボストン港の船舶のライブウェブデータを読む

この例では、Web サイトから最新のライブ データを取得して表示する方法を示します。この例では、MATLAB Analysis アプリと MATLAB Visualizations アプリによって提供されるコード テンプレートの 1 つを変更します。この例では、ボストン港の交通情報を提供する MarineTraffic Web サイトのデータを使用します。

テンプレートコードからMATLAB Analysis スクリプトを作成する

ボストン港の船舶に関する Web データをスクレイピングするには、コード テンプレートを使用して MATLAB ® スクリプトを作成できます。

ThingSpeak の Apps タブに移動し、MATLAB Analysis を選択します。新規をクリックし、Read live web data for vessels at the Port of Bostonを選択して、作成をクリックします。

Webデータの読み取り

MATLAB コード フィールドには、ライブ Web データを読み取り、船舶の数をカウントするためのコードが事前に入力されています。

1) ボストン港の船舶情報にアクセスするための URL を指定します。urlFilter を使用して、ターゲット文字列の後に表示される最初の 2 つの数字を読み取ります。この関数は、ページのソース コード内のターゲット文字列を識別し、その直後に表示される数字を返します。

url = 'https://www.marinetraffic.com/en/ais/details/ports/131/USA_port:BOSTON';
filteredData = urlfilter(url,'Vessels in Port:',2);

2) ウェブサイトのデータをスクレイピングした結果を表示します。この例では、2 つの要素が記録され、表示されます。

display(filteredData(1),'Vessels in Port');
    89
display(filteredData(2),'Expected Arrivals');
     8

3) [保存して実行] をクリックしてコードを実行します。出力 フィールドに結果が表示されます。

チャネルにデータを書き込む

1) 結果をプライベートチャネルに書き込んで保存します。ThingSpeakチャネルを作成するには、Channels タブに移動し、My Channels を選択します。新しいチャネルをクリックします。対応するチェックボックスを選択し、次のチャネル設定値を入力します。

  • 名前 — Vessels at the Port of Boston

  • フィールド 1 — Vessels in Port

  • フィールド2 — Expected Arrivals

チャネルを保存をクリックします。

2) MATLAB Code フィールドで、プライベートチャネルに書き込むための変数を設定します。writeChannelIDwriteAPIKey の指定された値を自分の値に置き換えます。チャネルID と API キーは、ページの右側にある チャネル情報 パネルで確認できます。

% Replace the [] with ID of the channel to write data to:
writeChannelID = 17504;
% Enter the write API key between the ''.
writeAPIKey = '23ZLGOBBU9TWHG2H';

3) 船舶データをチャネルに書き込みます。

thingSpeakWrite(writeChannelID,filteredData,'Writekey',writeAPIKey);

4) [保存して実行] をクリックしてコードを実行します。ThingSpeakチャネル内の各チャートには、Web サイト データのフィールドを表す 1 つのポイントが入力されます。ページの右側にある チャネル情報 パネルのチャネルリンクをクリックすると、チャネルにアクセスできます。

5) 数分後にもう一度 [保存して実行] をクリックし、別のデータ ポイントでチャネルを更新します。

参考

関数

トピック