fusou-datasets API Reference

fusou-datasets v1.0.0 の完全 API リファレンスです。

関数一覧

関数説明
configure()API キーと URL を設定
save_api_key()API キーをローカルに永続保存
list_tables()利用可能なテーブル一覧を取得
list_period_tags()期間タグ一覧を取得
load()データを DataFrame として読み込み
get_client_id()クライアント ID を取得

configure

fusou_datasets.configure(
    api_key: Optional[str] = None,
    api_url: Optional[str] = None
) -> None

API 認証情報を設定します。

パラメータ

パラメータ説明
api_keystr, optionalFUSOU API キー
api_urlstr, optionalAPI エンドポイント URL(デフォルト: https://fusou.pages.dev/api/data-loader

使用例

import fusou_datasets

# API キーのみ設定
fusou_datasets.configure(api_key="your_api_key")

# カスタム URL も設定
fusou_datasets.configure(
    api_key="your_api_key",
    api_url="https://custom.example.com/api/data-loader"
)

save_api_key

fusou_datasets.save_api_key(api_key: str) -> None

API キーを設定ファイルに永続保存します。

パラメータ

パラメータ説明
api_keystr保存する API キー

保存先

~/.fusou_loader/settings.json

使用例

import fusou_datasets

fusou_datasets.save_api_key("your_api_key")
# 次回以降、自動的にこのキーが使用されます

list_tables

fusou_datasets.list_tables() -> List[str]

利用可能なテーブル名の一覧を取得します。

戻り値

説明
List[str]テーブル名のリスト

例外

例外条件
AuthenticationErrorAPI キーが無効または未設定
DeviceUnverifiedErrorデバイス認証が必要(自動的に認証フローが開始)
FusouDatasetsErrorその他のエラー

使用例

import fusou_datasets

tables = fusou_datasets.list_tables()
print(tables)
# 出力例: ['ship_type', 'ship_master', 'equipment', ...]

# テーブル一覧を整形表示
for i, table in enumerate(tables, 1):
    print(f"{i}. {table}")

list_period_tags

fusou_datasets.list_period_tags() -> Dict[str, Any]

利用可能な期間タグと最新タグを取得します。

戻り値

説明
Dict[str, Any]period_tags(リスト)と latest(文字列)を含む辞書

戻り値の構造

{
    "period_tags": ["2024-10", "2024-11", "2024-12", ...],
    "latest": "2024-12"
}

使用例

import fusou_datasets

info = fusou_datasets.list_period_tags()

# 最新の期間タグ
print(f"最新: {info['latest']}")
# 出力例: 最新: 2024-12

# 利用可能な全期間
print(f"期間タグ: {info['period_tags']}")
# 出力例: 期間タグ: ['2024-10', '2024-11', '2024-12']

load

fusou_datasets.load(
    table: str,
    period_tag: str = "latest",
    limit: int = 100,
    show_progress: bool = True
) -> pd.DataFrame

指定したテーブルのデータを pandas DataFrame として読み込みます。

パラメータ

パラメータデフォルト説明
tablestr必須テーブル名(list_tables() で確認)
period_tagstr"latest"期間タグ("latest", "all", または特定のタグ)
limitint100読み込む最大ファイル数
show_progressboolTrueプログレスバーを表示するか

period_tag の値

説明
"latest"最新の期間のみ
"all"全期間を結合
"2024-12"特定の期間タグ(例)

戻り値

説明
pd.DataFrame読み込まれたデータ

例外

例外条件
ValueErrorテーブル名が空
DatasetNotFoundError指定したデータが存在しない
AuthenticationError認証エラー
FusouDatasetsErrorその他のエラー

使用例

import fusou_datasets

# 最新期間のデータを取得
df = fusou_datasets.load("ship_type")
print(df.head())

# 特定期間のデータを取得
df = fusou_datasets.load("ship_type", period_tag="2024-12")

# 全期間のデータを結合して取得
df = fusou_datasets.load("ship_type", period_tag="all")

# プログレスバーなしで読み込み
df = fusou_datasets.load("ship_type", show_progress=False)

# ファイル数を制限
df = fusou_datasets.load("ship_type", limit=10)

get_client_id

fusou_datasets.get_client_id() -> str

現在のデバイスのクライアント ID を取得します。

戻り値

説明
strUUID 形式のクライアント ID

使用例

import fusou_datasets

client_id = fusou_datasets.get_client_id()
print(client_id)
# 出力例: 550e8400-e29b-41d4-a716-446655440000

例外クラス

FusouDatasetsError

すべての fusou-datasets 例外の基底クラス。

class FusouDatasetsError(Exception):
    """Base exception."""
    pass

AuthenticationError

API キーが無効または未設定の場合に発生。

class AuthenticationError(FusouDatasetsError):
    """Invalid or missing API key."""
    pass

DeviceUnverifiedError

デバイス認証が必要な場合に発生。通常は自動的に認証フローが開始されます。

class DeviceUnverifiedError(FusouDatasetsError):
    """Device requires verification."""
    pass

DatasetNotFoundError

指定したデータセットが見つからない場合に発生。

class DatasetNotFoundError(FusouDatasetsError):
    """Dataset not found."""
    pass

VerificationError

デバイス認証に失敗した場合に発生。

class VerificationError(FusouDatasetsError):
    """Verification failed."""
    pass

例外処理の例

import fusou_datasets
from fusou_datasets import (
    FusouDatasetsError,
    AuthenticationError,
    DatasetNotFoundError
)

try:
    df = fusou_datasets.load("unknown_table")
except AuthenticationError as e:
    print(f"認証エラー: {e}")
except DatasetNotFoundError as e:
    print(f"データが見つかりません: {e}")
except FusouDatasetsError as e:
    print(f"予期しないエラー: {e}")

CLI コマンド

fusou-datasets は CLI からも操作できます。

バージョン確認

fusou-datasets --version
# 出力: fusou-datasets 1.0.0

クライアント ID 表示

fusou-datasets --client-id
# 出力: Client ID: 550e8400-e29b-41d4-a716-446655440000

テーブル一覧

fusou-datasets --tables
# 出力:
# ship_type
# ship_master
# equipment
# ...

期間タグ一覧

fusou-datasets --period-tags
# 出力: Latest: 2024-12

定数

定数説明
__version__"1.0.0"ライブラリバージョン
DEFAULT_API_URL"https://fusou.pages.dev/api/data-loader"デフォルト API URL
REQUEST_TIMEOUT30通常リクエストのタイムアウト(秒)
DOWNLOAD_TIMEOUT300ダウンロードのタイムアウト(秒)

次のステップ


Last updated:   Jan 1, 2026

Contributors: