1. haifuri

    Posted

    haifuri
Changes in title
+[Python]イカリング2のJsonを取得してみた
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,43 @@
+イカリング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の値をメモする.
+
+# コード
+```
+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") # 各バトルのデータ
+```
+
+Jsonで返ってくるので,いろいろ加工しやすい.
+他にも取得できるデータがあるかもしれない.
+
+各バトルのデータは,最新の50バトルまでしか履歴を見ることができないため,記録するのに活用できそうだ.
+自分だけでなく,仲間・相手のギアも見れるため,たくさんデータを集めれば得意/苦手なシチュエーション等のデータマイニングもできそう.