サバンナを生き抜く

サバンナを生き抜くためのブログ

ウデマエX全員の順位とブキとXパワーを取得してみた

どうもです。

前回の記事では、ウデマエXガチエリア 8月Xランキングでのブキの使用率を調査しました。

本記事では、集計対象のデータをどのように取得したか、について書きます。

 

 前回の記事はこちら

savatech.hatenablog.com

 

 タイトルの通り、全ルール/全員分のデータは既に取得しましたが、それらについての分析・考察はまた次回以降にやろうと思います……と書くとタイトル詐欺のような気がするので、8月末の時点での各ルールのウデマエXの人数だけは書いておきます。

ガチエリア:41,659人

ガチヤグラ:33,966人

ガチホコバトル:36,239人

・ガチアサリ:21,693人

 

では本題に入ります。

注意事項

公開されていないAPIを実行しています。
参考とさせていただいた記事にも書かれていますが、同じことをやるとしても自己責任でお願いします。

参考文献

以下の記事を参考にしています。

[Python]イカリング2のJsonを取得してみたhttps://qiita.com/haifuri/items/d8d06c111e2518bfbc87

Splatoon2APIを叩いてみる
https://qiita.com/dog_coro_zzz/items/788665a4c637cbb27807

 

データ取得方法

実行API

APIを実行し、データを取得しています。APIについてはググってください。自分もよくわかっていないです。
実行するAPIは以下のような感じです。

https://app.splatoon2.nintendo.net/api/x_power_ranking/180801T00_180901T00/splat_zones?page=1

これを実行すると、8月のガチエリアのXランキング1位から100位までの情報が取得できます。すごい。

取得できる情報

取得できる情報はjson形式でこんな感じです。
これは一人分で、このデータの配列がずらーっと100人分並んでいるイメージです。

{
 "cheater": false,
 "name": "きびしいサマンサ",
 "principal_id": ,
 "rank": null,
 "rank_change": null,
 "unique_id": ,
 "weapon": {
  "id": "3040",
  "image": "/images/weapon/6f1c2a339db6ec0dccb65704adee2db93c768245.png",
  "name": "エクスプロッシャー",
  "special": {
   "id": "12",
   "image_a": "/images/special/f49b0c33e1e25853a15dfc6a6c95705e8d290741.png",
   "image_b": "/images/special/7cebdb0c336b64b829a1cfae2d40c0c4cb24a897.png",
   "name": "バブルランチャー"
  },
  "sub": {
   "id": "6",
   "image_a": "/images/sub/46f5b9fe851d4ac8df9eb959e7270ff72526dffe.png",
   "image_b": "/images/sub/47b6c31e712634bd793d5b920288fe7b1fb3c2bd.png",
   "name": "スプリンクラー"
  },
  "thumbnail": "/images/weapon/bf0d4b5ddc35a533fc5080d025707f386b2a5daa.png"
 },
 "x_power": 2244.7
}

 ※自分のXランキングのデータです。
 principal_id, unique_idについてはどう使われているかわからないので一応削除しています。

このように、
・名前
・使用ブキ、スペシャル、サブ
・Xパワー
・順位(2001位以下はnullです。自分は10897位なのでnullになっている。2001位以降は自力で順位を入れています。)
などのデータが全員分取得できます。

APIのパラメータ

先ほどのAPIを例に説明すると、

f:id:kibishii_savanna:20180910220522p:plain
①固定部分

②期間を指定する
 ただし、適当に入力してもダメな模様。
 "180801T00_180901T00"、"180701T00_180801T00"など、1日始まりの1日終わりでないと受け付けられない。
 また、集計中(例えば今でいうと2018年9月)の情報も取得できないみたい(集計中の情報が欲しかった……)。
 ほかに指定の仕方を見つけたらぜひご連絡ください。
 
③ルール名を指定する
 ・ガチエリア:splat_zones
 ・ガチヤグラ:tower_control
 ・ガチホコバトル:rainmaker
 ・ガチアサリ:clam_blitz

④ページ数を指定する
 page=1とした場合、1位から100位まで、page=2とした場合、101位から200位までのデータが取得できる。
 イカリング2で表示できるのは500位までだが、page=6、501位以降のデータも取得できる。
 たぶん、ウデマエX全員のデータが取得できている。

 ブキ使用率調査について

 前回の記事では、このAPIを使って取れるガチエリアXランキング全ての情報を取得し、使用ブキを集計することで使用率を割り出しました。
統計使えば全員分取得しなくてもよいのかもしれないですが、
・統計の知識を大学に置いてきてしまった
・Xパワーの大小によってよく使われるブキが違うかも
ということで、手っ取り早く全部数えました。

まとめ

以上がウデマエX全員の順位の取得方法となります。
このAPIを使うことで、Xパワーの分布やブキトッププレイヤーのXパワーなど、面白いことがわかるかもです。
これからも調査を続けていきますのでよろしくお願いします。
怒られたらやめます。