Blog
2026年2月22日 - 1 MIN READ
日本ハイスコア協会のデータ集計ページ下調べ②

日本ハイスコア協会のデータ集計ページ下調べ②

JHAのまとめページ下調べ②

1回目はこちら

本日の成果の要約

なんかいい感じにJHAのデータを引っこ抜けた。

APIキー払い出し

Google Cloud ConsoleでAPIキーを払い出し。 権限はGoogleスプレッドシートのみで。 テスト用なのでリクエスト制限は無し。本番はGithub所有のIPアドレスで一応の制限をかけるのかしら。 漏れても公開のGoogleスプレッドシートを見られるだけの権限なのでさほど有用性は無しの認識。 ただ実際使用する際は一応::add_mask::でactionsで内容は秘匿したり、クエリパラメータでAPIを指定するんじゃなくてヘッダに入れたりとかでエラーログに出ないようにするとか対策はしておくべき。

PoC

データが取得できるところまでできたので一旦公開。 here!

以下のコマンドを実行するとGoogleのレスポンスがそのままJSONで出る。

export GOOGLE_API_KEY={Google Cloud Consoleで払いだしてきたAPIキー}
python app.py
cat 1eZxMbrWuUaPJRN7UnoyG8hN3jWTaSvJnSsYnValpvCw.json | jq .
// 2021年2月より後のデータがめっちゃ出る

今後の展望

データを整理して同じゲーム名のものはまとめる。 JHAがゲーム名を正規化していなければ同一とみなすゲーム名を決めてそれを設定ファイルに書く地獄の作業が待っている。 多分以下のようなJSONにまとめてフロントに渡すことになるのかな1

{
  "ほげほげゲーム": {
    "機体A": [
      {
        "date": 20260101,
        "name": "ほげ太郎",
        "score": 1145141919810
      },
      {
        "date": 20250101,
        "name": "ふが二郎",
        "score": 810
      }
    ]
  }
}

Footnotes

  1. こういうのはJSON schemaで書けた方がかっこいいから学んでおこうな?
Built with Nuxt UI • © 2026