API を使用すると、データが更新された場合に変更を受け取り、.csv としてエクスポートすると内容が変更されなくなることを意味すると思います。
csv をコンピューターにダウンロードすると、その csv ファイルはそれ以上更新されないという意味で正しいです。
API とは、あなたが呼び出すものです。この場合、API を呼び出すと、「xxx に関する最新のデータはありますか?」と言うことができ、尋ねた内容に関する最新の情報が返されます。ただし、これは、新しい更新があるときにこのサイトが通知するという意味ではありません。変更があるかどうかを確認するには、API を (毎時間、毎日など) 呼び出し続ける必要があります。
私の質問は、この API コードを使用して、.csv ファイルをエクスポートするときに取得するのと同じテーブルを表示する方法です。
するでしょう:
- サーバー コードまたはクラウド サービスから API を呼び出す
- サーバー コードまたはクラウド サービスで応答を解読 (または "解析") します。
- 解読された応答を使用して、HTML で作成されたテーブルを作成するか、データベースに配置します
この情報を抽出するためにデータベースを使用しますか? どのようなデータベースで、どのように API をデータベースにリンクしますか?
情報を抽出するために必ずしもデータベースが必要というわけではありませんが、データベースは最終的なデータを内部に配置するのに適しています。
まず、「REST API を呼び出す」何らかの方法が必要です。これを行うには、シェル スクリプトを使用する、Python を使用する、Excel VBA を使用するなど、さまざまな方法があります。
視覚化するのが難しいことは理解しています。ここでは、情報を取得できるステップ 1 の例を示します。
Chrome ブラウザーのアドレス バーに以下の URL (ご紹介いただいたサイトから取得) を入力して、
http://opendata.brussels.be/api/records/1.0/search/ ?dataset=associations- と入力してみてください。クラブスポーツ
多くの括弧とコンマを含む多くのテキストが返される様子がわかりましたか? 基本的に、サイトにデータを提供するように依頼しましたが、これが返された応答です (ブラウザーによって動作が異なります。IE は、応答を .json ファイルとしてダウンロードするように求めます)。基本的に API を呼び出しました。
このデータをより明確に表示するには、Chrome ブラウザーの開発者ツールを開き、次の JavaScript コードを入力します。
var url = 'http://opendata.brussels.be/api/records/1.0/search/?dataset=associations-clubs-sportifs';
var xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.onload = function() {
if (xhr.status === 200) {
// success
console.log(JSON.parse(xhr.responseText));
} else {
// error
console.log(JSON.parse(xhr.responseText));
}
};
xhr.send();
Enter キーを押すと、"Object" という応答が返されます。矢印をクリックすると、これが今見たデータのよりクリーンなバージョンであることがわかります。
この場合、JavaScript を使用してデータを取得しましたが、任意のコードを使用できます。JavaScript を使用してデータを解読し、操作して、データベースにプッシュすることができます。
kintoneは、JavaScript コードを実行するようにカスタマイズできるオンライン クラウド データベースであり、データをデータベースに保存するため、下の画像のようにデータがオンラインに保存されます。これは、使用できるデータベースのほんの一例です。
IFTTT や Zapier など、異なるサービスの API エンドポイントを相互に接続できるクラウド サービスは他にもありますが、オープン データで接続できるかどうかはわかりません。