1. haifuri

    No comment

    haifuri
Changes in body
Source | HTML | Preview
@@ -1,58 +1,52 @@
イカリング2のデータをPCのブラウザで見る方法が上がっていたため,それを参考にした.
[【スプラトゥーン2】イカリング2の戦績データをPCブラウザで無理矢理閲覧する](http://s2terminal.hatenablog.com/entry/2017/07/23/203831)
# 環境
Python 3.6.1
# Cookieの取得
今記事を書いていたら,分かりやすいものを発見した.
[イカリング2をPCブラウザで見れる方法があるらしいのでやってみた](http://qiita.com/valmet/items/1b3960085a8764778bf0)
このリンクの記載の方法で,Cookieの値をメモする.
-[追記]
-上記の方法だとiksm_sessionを一度メモしてもしばらくすると期限切れで使えなくなってしまう.
-
-[[Python]イカリング2のデータをstat.inkに投げる](http://qiita.com/tt-coder/items/e23e87797c9ac0178123)
-で行った方法であれば,期限切れせずにデータを取得できるはず.
-
# コード
```python:ikaring.py
import urllib
from urllib.request import build_opener, HTTPCookieProcessor
from urllib.parse import urlencode
import http
from http.cookiejar import CookieJar
import codecs
def printJson(url): # Jsonを取得してprint
cookie = "iksm_session=メモしたCookie値"
opener = build_opener(HTTPCookieProcessor(CookieJar()))
opener.addheaders.append(("Cookie", cookie))
res = opener.open(url)
print (codecs.decode(res.read(), 'unicode-escape'))
printJson("https://app.splatoon2.nintendo.net/api/data/stages") # 今のステージの取得
#printJson("https://app.splatoon2.nintendo.net/api/festivals/active") # フェスの情報の取得?
#printJson("https://app.splatoon2.nintendo.net/api/schedules") # スケジュールの取得
#printJson("https://app.splatoon2.nintendo.net/api/records") # 今の装備や塗った面積等の取得
#printJson("https://app.splatoon2.nintendo.net/api/timeline") # フレンドの状況?
#printJson("https://app.splatoon2.nintendo.net/api/onlineshop/merchandises") # ギアショップの情報
#printJson("https://app.splatoon2.nintendo.net/api/results/110") # 各バトルのデータ
```
<img src="https://qiita-image-store.s3.amazonaws.com/0/136855/6bb3a8af-4b7c-0f8d-2625-24094fb67219.png" width=50%>
こんな感じでJsonで返ってくるので,いろいろ加工しやすい.
他にも取得できるデータがあるかもしれない.
`https://app.splatoon2.nintendo.net/api/results/110`の110が各バトルに該当する.
109番目のバトルのデータにアクセスしたい場合は,`https://app.splatoon2.nintendo.net/api/results/109`とすれば良い.
人によってバトル回数・直近50バトルが異なることに注意.
最新の50バトルまでしか履歴を見ることができないため,各バトルのデータを記録するのに活用できそうだ.
自分だけでなく,仲間・相手のギアも見れるため,たくさんデータを集めれば得意/苦手なシチュエーション等のデータマイニングもできそう.