きのうは一日中エゴサしてて、わたしにも承認欲求あるんじゃんとは思ったわ。
なんか明確に沢山の人から支持されたアプリ書けることって珍しいので、アナリティクス眺めるのも楽しかった。あとはアプリログが流れるのをちらちらみて、トラブルの端緒を見つけようとしてました。
そもそもの設計がちゃんとしてたっぽくて(Bravo!)、いまのとこ問題起きてないす。

一方、話題にしている人は「履歴があってグラフが表示された人」だろうという推測はできています。
こっちがデータ持ってないFIDでアクセス来てる場合は404になるんで検知できるわけですが、まーまーそりゃ取りこぼしたFIDだってあるでしょうよというかんじ。
アクティブプレイヤーのすべての把握なんて無理なんだから。

じゃあどうやってFIDを集めてんのか

誰がアクティブかなんてわかんないんすよ。カプコンはわかるが我々はわかんない。
まず、わたしがどうやってFIDと戦歴の収集しているかを示す。わりと泥臭い手法でやってる。

画像でかいな。
とりあえず誰かのページ見に行くと、4件履歴があるのがわかります。
履歴のとこクリックするとその人のページに飛べるので、見に行きます。するとLP、勝敗、キャラだの色々の値が取れると。
これを集めてます。
更にその人の履歴を4件見て~とかやれるといいんですが、これは鼠算の世界に入るんで深い追跡はせず、今回見つけたFIDを次回以降の収集対象として記録します。
収集の土台となるFIDはあちこちのランク帯・および活動エリアから無作為にFIDをCFNで検索して集め、それを”元手”として収集を開始しました。
一番最初は200~300人くらいだったかも。各人の履歴から4件ずつあつめてあつめて……を2ヶ月くらいやって集計の材料をつくってました。
ここに出てくる人は「今やってる人」しか基本的に出てこないので、アクティブプレイヤーだけを収集していることになると。むろん収集中に引退する人も出ますけど、いつ戦ったかが書いてあるので鮮度の低いページは見るのをやめたりします。

ガンガン集めるわけにもいかない

スクレイピングってWeb運営者からは嫌われる行為(だって人間はページ見てなくて、材料として扱われるんだもの)なんで、負荷をかけるようなアクセスを避けます。たとえば現時点でわたしが集めたFIDは9万を超えているんですが、毎日9万アクセスしてくるやつがいたらさすがに蹴るわけです。
なのでその日に取りに行くFIDの数は限定して、そのFIDを取りに行くのは数日に一度です。

まえにいちど意図せず鼠算方式でガッと動かしてしまったことがあり、しばらく429エラー返ってきてシャド研見れない日が出たりしました。すまないと思っている。

MyRankに表示されない人が出るのはなぜか

もう伝わると思うんだけど、あのたった4件の誰かの履歴に載っていないと、収集プログラムはその人を見つけることができない。
「いや昨日も対戦したけど登録されてなかった」とかもありましょうが、数日にたった一度、たまたま4件の履歴に残っている時に限り”見つかる”わけです。
運です。
「載ってないんだけど」って人は多分そういうことで、確率的なものです。
んで「MyRank: NotFound」って出た時点でこっちはそのFIDを取得対象のリストに自動登録してるんで、数日後にはグラフに載り始めますよって仕掛けになっています。

グラフ出すよー!ばーん!ってリリースして空っぽだと誰も見ないんで、イニシャルのデータとして2ヶ月溜め込んだのを作っといたかんじです。
スト5まだしばらくは続くんで、その間は更新してこっかなと思っています。
というかスト6出た以降、どのくらいアクティブが変わるのかを観測する場所としても(個人的な趣味として)ありだなーとは。