チラ裏!

にわかのオタクがアニメを観て色々思ったこと考えたことを徒然なるままに書き連ねるチラシの裏系ブログ

なにがクリスマスじゃあい!

皆さんこんにちは.もう12月ですね.学生の皆さんは卒論修論でクソ忙しい時期だと思います.社会人の皆さんは忘年会ラッシュで肝臓がやられ始める時期でしょうか.僕は修論書かなきゃいけないのでチマチマ実験しながら必要なデータを取ってます.

さて,それはさておき12月といえばクリスマス.クリスマスといえばリア充の皆さんが親しい異性と聖夜を満喫する時期ですが,キモオタ理系院生の僕には彼女が出来たことないのでそういうイベントは毎年無縁なものです.とはいえ20ウン年間クリスマスデートすらほぼしたことが無いのはオタクとしてはともかく人としてどうなんだろう…と思ったので最近余り触って無かったTinderとかいうアプリに手を伸ばし始めました.

Tinderではユーザの写真とbioを見て基本的にはLike(右スワイプ)とNope(左スワイプ)で延々と仕分けていくのですが,やってる途中で何だかめんどくさくなってくる上,公共の場でスワイプした場合「あ,こいつ終わってそうなオタクの癖にTinderやってんな……」と思われそうでつらい(自意識過剰のオタク)

f:id:healuniv:20171205205722j:plain 図:公共の場で右スワイプするオタク(画像はイメージです)

そんな訳でせめて右スワイプだけは自動化して,手動で右スワイプしなくていい様に出来ないものか……と考えてたのですが,どうやらpynder( https://github.com/charliewolf/pynder )というPythonでTinder API叩けるパッケージがあるようなので簡単なコードを書いてみました.なお,ここではテキトウなFacebookアカウントを使ってTinderアカウントを作成してあるものとして話を進めます.

実行環境

pynderのインストール

以下をターミナル上で実行するだけ.

pip install pynder

ただし, https://github.com/charliewolf/pynder/issues/152 で報告されてるように,周辺のユーザ情報を取得する際エラーを吐くのでpynder/modules/user.pyの27行目辺りを次の様に書き換えておきましょう.

# 変更前
self.schools_id.extend([school["id"] for school in data['schools']])
# 変更後
self.schools_id.extend([school["id"] for school in data['schools'] if hasattr(school, 'id')])

(2018/1/27修正) pip経由でインストールすると上記の修正を加えても上手く動きません.このため,githubから落としたpynderをsetup.pyでインストールする必要があります.

pip uninstall pynder # インストール済みのpynderを削除
git clone https://github.com/charliewolf/pynder # github経由でpynderを落とす
cd pynder
python setup.py install # pynderパッケージをインストール

Facebook IDとトークンの取得

Facebook IDの取得

https://findmyfbid.com/ を使ってFacebook IDを取得しておきましょう.

トークンの取得

Tinderの仕様変更の影響か何かのせいで既存のドキュメントが殆ど使えなかったので困り果てていましたが,ダメ元でググり直してみたところtinder_auth_fetcherなるライブラリ( https://github.com/shuheiktgw/tinder_auth_fetcher/ )を発見.早速使ってみることにしました.

sudo gem install tinder_auth_fetcher

でインストールした後は以下のコードを実行.

require "tinder_auth_fetcher"
token = TinderAuthFetcher.fetch_token("email@address", "your password") # Facebookのログインに使うメアドとログインパスワードを入力

これでアクセストークンを取得出来ます.

自動右スワイプ

ここまで来たら以下のコードを使うだけで自動で右スワイプが出来ます.

# -*- coding: utf-8 -*-
import pynder
import sys

usrid = "your_fb_id" #FacebookのID(findmyfbid.comで取得)
token = "your_fb_token" # アクセストークン(tinder_auth_fetcherで取得)

session = pynder.Session(facebook_id = usrid, facebook_token = token) # Tinderアカウントへのログイン
users = session.nearby_users() #近くに居るユーザの情報を取得

counter = 0
limit = 100 #無課金ユーザなら100,課金ユーザならテキトウな値に設定しておく

for usr in users:
    if counter == limit:
        print "右スワイプ終わり!"
        sys.exit()
    usr.like() # 右スワイプ
    counter += 1

まとめ

彼女がほしいです……

2017秋アニメについて そのいち!

さて,そろそろ夏アニメも終わりが見えてくる時期が来てしまった.こうなると秋アニメのラインナップが気になる時期である.そんなわけで秋に何を観るか?色々考えてみたことの一部を書きたい.なお,手法の実装にまだ時間がかかりそうなので,今回はあくまでモチベーションとかそんな感じの話をさせてもらいたい.

背景

akiba-souken.com

公式サイトやまとめサイト等各種の情報を見るに,一般に秋アニメは豊作と言われる風潮があるが,来期もそのご多分に漏れず各種ビッグタイトルが集まっており豊作が予想されよう.

一方,秋は修論を本腰入れて進めねばならない時期でもある.修論を落としてしまうと人生が終わってしまうので(それはそう),基本は修論を最優先で進めたい.

要するに秋は観るべきものは多くても観る本数に制約をかけないといけない,私にとってはそんな時期なのである.そこで,ここでは観るべきアニメの優先順位について検討していきたい.「そんなものは頭の中だけに留めとく話でわざわざブログに書くべきじゃない」「観るべきアニメとかそういうのは違う,全てのアニメが観るべきアニメなんだ」という意見もまぁ尤もなので,そういう人はブラウザバックを推奨する.

経験と勘によるアニメの選定とその問題点

今まで,観るアニメを選ぶ際はTwitterや公式PV等の情報から興味を惹かれたものを直感的に選ぶ,というやり方を採用していた.PVの作画が良さそう,自分の好きな声優さんが出ている,音楽が良い,あらすじに惹かれた,など各種の情報を統合して判断していく,比較的オーソドックスな「経験と勘」に基づいた手法と思われる.

しかし,これにはあるリスクが常について回る.そう,所謂”””ハズレ”””を引くリスクである.作画やあらすじに惹かれて観てみたものの待ち受けていたのは薄っぺらいストーリーに何がしたいのか分からない登場人物たち,結果4ヶ月間虚無感に囚われながら過ごす羽目になる……そういう”””ハズレ”””を引くリスクはアニメを観ている以上常に付きまとう.

他の時期なら別にいいのだが先程も述べたとおり今は修論をちゃんとやらないといけない時期である.諸事情で引っ越しをする羽目になったし慣れない環境で頑張らないといけない時期にこんなことで消耗することは出来ない.加えてアニメを観る時間自体も制限する必要があるので,観る本数にも制限をかけないといけない.限られた本数の中にこうした”””ハズレ”””が混ざってしまうと数少ない息抜きのはずのアニメがゼミで炎上して詰められる以上の生き地獄に変貌しかねない.

f:id:healuniv:20170912070541p:plain 図1.ハズレを引いて泣き叫ぶオタク(キモオタの汚い泣き顔をイリヤスフィール・フォン・アインツベルンちゃんに差し替えてあります)

そこで,ここでは自身の嗜好を考慮した上で観るアニメを経験と勘によらず定量的に決定するための手法を提案していきたい.

アニメの視聴歴の定量

定量的な判断のために重要となるのは,過去視聴したアニメに関する嗜好とその特徴に関するデータである.ここでは以下の様にデータ化することにした.

嗜好について

嗜好に関しては,例えばMovieLens(MovieLens | GroupLens)の様なデータセットでもみられるような,5段階評価により評点を付け,その平均を取る方法で定量化を試みた.

f:id:healuniv:20170912141937p:plain 図2.評点の例

ここでは簡単のため,「ストーリー」,「キャラクター」,「作画」,「音楽」,「演出」の5項目に評価軸を絞ることにする.もっと評価軸を増やすべきであろうが,いかんせん時間がないのだ.この様にして過去に観た全てのアニメ327本について評点を付けたデータを作成した.

特徴について

これに加え,制作会社,監督,シリーズ構成に関するデータも作成した.該当タイトルに参加している場合は1,していない場合0で表現してある.

本当は声優さんの情報も入れるべきなのだろうが,声優さんの情報まで入れると死にそうになるのでここでは割愛した.

今後の予定

どうすっかな〜もうな〜.

本ブログの趣旨について,

色々言い訳みたいなものとか書かせていただきたい.

なぜ始めてしまったのか

周りにアニメについてブログで思い思いに語るオタクが増えてきたので「それなら自分も!」と乗っかる形で始めてみた.

何を書くのか

トップに書いたとおり,基本的には観たアニメについて思ったことや感じたことを書き連ねる雑記帳として利用する予定.

こんなことをやっている暇はあるのか

修論をやっていかないといけないので更新頻度は極めて低いと思われる.やっていく気力が欠けている時はこの限りではない.

最後に言い訳はあるか

チラ裏レベルのアレな議論ばかりが予想されるが本人は大真面目でやってるので暖かく見守っていただきたい.