rtweetパッケージでTwitter APIからデータを取るのが超お手軽になってた

Twitter APIからデータを取得するにはrtweetパッケージを使おう、という話は前に書きましたが、Twitter APIを使うにはトークン取得のために各自でTwitterアプリを登録する必要があり、やや面倒でした。 例えば2017年9月のこの記事ではその登録の仕方を詳しく説明しています。

しかし、そのちょっとあとにrtweet作者とHadleyがこんなやりとりをしてるのを目にしました*1。なんか自分でアプリ登録しなくてもrtweetパッケージのアプリを使えそうな雰囲気...?

で、そういえばどうなったかなと思って質問してみると、もうすでにアプリIDを埋め込んだバージョンがCRANに上がっているということでした(2017年11月のアップデート)。なんと!!!

そんなわけで今やrtweetパッケージの使い方は超簡単です。

rtweetパッケージのはじめ方

Twitterアカウントを作成

持っていなければつくりましょう。(まあTwitterに興味を持つくらいだからアカウント持ってますよね...?)

rtweetパッケージをインストール

インストールしていなければインストールしましょう。CRANに上がってるのでinstall.packages()でインストールできます。

install.packages("rtweet")

関数を使う

インストールできたら、なんでもいいのでrtweetの関数を使います。 キーワードでツイートを検索するsearch_tweets()でも、ユーザのタイムラインを取得するget_timeline()でも、どの関数でもいいです。

x <- search_tweets("タカヤナギサンのお金で", include_rts = FALSE)

はじめて関数を使うと、ブラウザが立ち上がり、アプリ連携の認証を求められます。アプリ名と権限を確認したら、「連携アプリを認証」的なボタンを押しましょう。

f:id:yutannihilation:20180209141316p:plain

無事にトークンが発行されると以下のような画面になるのでブラウザを閉じてRのコンソールに戻りましょう。

f:id:yutannihilation:20180209141743p:plain

これで準備はおしまいです。トークンが、~/.rtweet_token.rdsに保存され、次回以降も使えるようになります。

感想

めちゃくちゃお手軽じゃないですか? 感動しました。rtweetのメンテナの方、ほんと丁寧だし細かい心遣いがすごくて尊敬しています。

あと、rtweetの使い方については、キャプテンアメリカことBob Rudisさんがよさげな本を今年頭に出しています。 がっつり使ってみたいという人は読んでみるといいのではないでしょうか(私はまだ読んでません)。

*1:なぜTwitterアプリを各自で登録しないといけないかというと、APIへのリクエストのrate limitがあり、rtweetパッケージ全体で同じアプリIDを使ってしまうとそこに引っかかりやすいのでは?という説明でした。が、それは勘違いで、アプリIDが同じだろうが違おうが制限はユーザごとにかかるものでした。ということでパッケージに埋め込むことになったようです。