プロレス統計

「プロレスの数字とプロレスする」をテーマにプロレスに関連する数字を調べ、まとめ、考えるブログです。

MENU

【Twitter】TwitterAPIの仕様変更などに関する話

2019年もはや半分が過ぎ、令和もはや2ヶ月が過ぎたころですが皆様いかがお過ごしでしょうか。
思えば新元号の発表が4月初めで、施行まで1か月しかなかったのでSE職はかなりデスマーチを強いられたなんて言ううわさもあったけどどうだったんですかね。

まぁそれはさておき、つい先日の新日本の動員・ツイート数報告でTwitterにおけるSearch Suggestion Banに関する話をしたと思うんですが、その後Twitter及びTwitterAPIについていろいろわかったこと、および変化があったので今回はTwitter関係のことについて3つほど紹介です。
(プロレス関係の話は)ないです。

 

Search Suggestion Banについて

xckb.hatenablog.com

Search Suggestion Ban(以下SSB)については上記の月例報告記事で紹介しましたが私がSSBというものについて知ったのは上の記事。
文字通りに読み解けばTwitterの検索のSuggestionからBANされるというもの。
まぁ私はこれを「Twitterの検索に現れないということはAPI上でも表示・取得できていないのでは?」と思ったわけです。
とはいえこのSSBの他にもSearch Banという文字通り検索からのBANというのも存在しているらしく、SSBとSearch Banの違いとは?となっていたんですよね。

というわけでとりあえず現状取得できていたデータを用いて検証を行いました。
その際に用いたのはTwitter Shadowban Testというサイト、こちらはアカウント名(スクリーンネーム)を入力することでそのアカウントが各種BANをされているのか調べてくれるというもの。
仕組みとしてはそのアカウント名でTwitter検索を行い(from:(アカウント名)で検索)、ツイートが表示されるかどうかを調べるというもの。
これを自前のTwitterAPIでできないものか?とも思ったんですがAPIで取得できるツイートが7日以内のものに限られるのでうまく働かなかったんですよね。
というわけでこれをPythonで半自動で検証するためにSeleniumというものを使用、これはGoogle ChromeなどのWebブラウザ上の操作をPythonに代行させるもの。
これを使えばブラウザでやっていることをすべて代行させることができるわけですけど、サイトの応答などを待たなければならないため如何せん動作が遅い。
その関係もあって取得していたすべてのデータについて検証することはできませんでした。

なので一部のユーザー情報について簡単に検証してみた結果ですが、直近のユーザー情報をみてもSSBのユーザーも取得できていた(取得したユーザーの中にSSBのユーザーがいた)というのが確認できた情報です。
その一方で、すでに消去されたと思われるアカウントを除いてSearch BanのユーザーはいなかったためSearch Banのユーザーは取得できていないようです。
つまりは「SSBによっていつもよりツイートが取得できていないのではないか?」という予想は間違っていたということですね、お騒がせしました。
本来はよりおおくのデータを集計すべきだとは思うんですがSelenium君が何と言っても動作が遅いのでやる気が起きない・・・なにか別の手法が判明したらやろうかな、何やらユーザーの属性によってSSB率の違いが出るともいうので興味はあるのだ。

Twitter APIの仕様変更

続いていつもお世話になっているTwitter APIについて変更があったようです。
これに気付いてのはつい先日のG1開幕戦の集計をした後のことですが、いつもはユーザーの言語情報を集計しているのですが、取得できた言語数が0になっている。
改めてツイートを取得し、Twitter DevelopperのChange logを確認してみると5月末に取得できるツイート情報の内容に変更があり、ユーザーの言語情報をはじめいくつかのユーザー情報は取得できないようになった模様、悲しいなぁ・・・
というわけで今後の集計結果には日本語・英語ツイートそれぞれのツイート数や言語数なんかについての解析はできなさそうですね。
とはいえDevelopperを見る感じ、ユーザーのIDなどからユーザー情報を取得することでユーザーの言語情報を調べることはできるのでやろうと思えばユーザーの解析もできるとは思いますけど少し面倒で残念無念。

有料版Twitter APIの登場

で、Twitter Developperをチェックしていたらなにやら有料版のTwitter APIがリリースされていたようです。
これまでにも何度か説明しましたが、以前から無償で提供されていたTwitter API(上記サイトでいうStandard)は7日前までのツイートしか取得することはできませんでした。
それに対して有料版(PremiumとEnterpriseが存在)は30日前までの取得が可能なプランから、2004年以降のすべてのツイートを取得できるプランもあるという。
まさに欲しい欲しいと言っていたものがここに!なんですがそのお値段月99ドルから、結構なお値段する・・・
しかもPremiumには月ごとにリクエスト上限が設定されているようで、1度のリクエストで取得できるツイート数が100~500ツイート、そして毎月のリクエスト上限がプランの値段によって違っており、99ドルだとリクエストは100回が上限、1000回であれば774ドルとなっているようで。
うーんこれは素人が遊びで使うものではないなぁ、実際にQiitaでみかけたこのAPIを使っている人も研究用に科研費で購入したなんて言ってましたし。
というわけで念願の有料版APIでしたがもう少し経済状況が改善するか、アドセンス収益が1,2桁上がるか、石油王がポンと提供してくれるまでは待ちですね。

 

所感雑感

というわけでTwitterに関係したよもやま事でした。
SSBの検証については結構前に終わってはいたんですが、タイミングを逃して今日まで報告してなかったんですよね。
まぁ結果としては恐れていたSSBによって思うように集計できないという状況ではなかったものの、まさかのTwitterAPIの仕様変更が・・・といろいろ畳みかけたのでもう記事のネタにできるな!となった次第です。
といいつつこういう仕様の変更は結構がっくり来る部分があります、まぁ単純にできることが減るわけですし。
もちろん何か新しいことができるかもしれない変更なのでそれについてはこれからちょっと調べてみる予定です。

きょうはこれまで、それでは