rOpenSci (v. 0.6.9) によってレビューされたrtweet
パッケージは、TwitterのRESTおよびストリームAPIを介して、Twitterのデータを収集・整理するために設計・実装された。
それを使用するためのR環境の初期設定については、 過去記事の「R/rtweetとか諸々を使って、つぶやきのテキスト解析 (形態素分析 + 感情分析) をやってみた件」を 参考にしてみてください。
rtweetパッケージのインストール
rtweetパッケージは、CRAN版と開発版が使える。 インストールの仕方がそれぞれで変わってくる。
#CRANからリリース版のインストールの場合 install.packages("rtweet") #GitHubから開発版のインストールの場合 install.packages("rtweet", repos = 'https://ropensci.r-universe.dev')
テキストをつぶやく
Twitterの基本操作としては、 ツイート、リプライ(返信)、いいね、リツイートなどがある。 1回につき140文字までのテキスト(=ツイート)や画像を投稿することができる。
post_tweet
関数を使って、
ユーザーのTwitterアカウントにステータスアップデートを投稿する。
いわゆる、Twitterのツイートを行うことである。
テキストをつぶやく場合には、status
の引数を使う。
#ロード library(rtweet) #テキストをつぶやく post_tweet( status = "何かをつぶやく" ) #Twitterサイトを開いて、確認する browseURL("https://twitter.com/home?lang=ja")
画像をつぶやく
また、画像をつぶやく場合には、media
の引数を使う。
適当な画像(e.g. R言語のロゴ)を用意して、mediaにそのパスを記述する。
#画像をつぶやく post_tweet(media = "Rlogo.png")
Twitterアカウントに行くと、Rロゴが出力されている。
まとめ
post_tweet関数で、テキストとか画像とかをつぶやける。 他の関数と組み合わせることで、解析結果をツイートする、Botとかもできそうに思う。 近々、rtweetパッケージを使って、Bot作りもやってみようと思う。
rtweet内の関数の概要(機械翻訳)
関数名 | 概要 |
---|---|
as_screenname | ユーザー識別子をスクリーンネームとして評価するよう強制します。 |
bearer_token | ベアラートークン。 |
create_token | Twitter 認証トークンを作成します。 |
direct_messages | 認証したユーザが送受信したダイレクトメッセージを取得します。を過去30日間から取得します。 |
do_call_rbind | データフレームのリストを、属性(ツイートやユーザー)を保持したままバインドする |
emojis | 絵文字のコードと説明のデータです。 |
flatten | データフレームをフラット化/アンフラット化する |
get_collections | ユーザIDやステータスIDでコレクションを取得する |
get_favorites | 対象ユーザがお気に入りに登録しているステータスのツイートデータを取得する。 |
get_followers | 対象ユーザをフォローしているアカウントのユーザIDを取得します。 |
get_friends | 対象のユーザーにフォローされているアカウントのユーザーIDを取得します。 |
get_mentions | 認証したユーザーのメンションを取得します。 |
get_my_timeline | 自分のタイムラインを取得します。 |
get_retweeters | 指定されたステータスをリツイートしたユーザのユーザIDを取得します。 |
get_retweets | 特定の Twitter ステータスに対する直近のリツイートを取得します。 |
get_timeline | 1人または複数のユーザのタイムライン(対象ユーザが投稿したツイート)を取得します。 |
get_tokens | Twitter の認証トークンを取得する。 |
get_trends | Twitter のトレンドデータを取得する。 |
langs | Twitter のデータで認識される言語コード。 |
lat_lng | ツイッターデータに緯度・経度の変数を追加します。 |
lists_members | Twitterのリストメンバー(リスト上のユーザー)を取得します。 |
lists_statuses | 指定したリストのメンバーが作成したツイートのタイムラインを取得します。 |
lists_subscribers | 指定したリストの購読者を取得します。 |
lists_subscriptions | 指定したユーザーのリスト購読者を取得します。 |
lists_users | 指定したユーザが購読しているすべてのリスト (自分自身のリストも含む) を取得します。 |
lookup_collections | コレクションを、ユーザ名あるいはステータス ID で取得します。 |
lookup_coords | 指定した位置の座標を取得します。 |
lookup_friendships | 指定した二人のユーザ間の友人関係を調べます。 |
lookup_statuses | 指定したステータス (ステータス ID) に対応するツイートデータを取得します。 |
lookup_users | 指定したユーザ(ユーザ IDやスクリーンネーム)のTwitterユーザデータを取得します。 |
my_friendships | ユーザ間の友人関係情報を検索します。 |
network_data | ネットワークデータ |
next_cursor | next_cursor/previous_cursor/max_id |
parse_stream | Twitter のストリームデータ(JSONファイル)をパースしたデータフレームに変換します。 |
plain_tweets | 文字ベクトル(ツイート)を、よりプレーンなテキストにクリーンアップします。 |
post_favorite | 対象のステータスIDをお気に入りに登録します。 |
post_follow | 対象のTwitterユーザーをフォローする。 |
post_friendship | 友情関係の通知やリツイートを更新する。 |
post_list | Twitterのリストを管理します |
post_message | ユーザーの Twitterアカウントからダイレクトメッセージを投稿します。 |
post_tweet | ユーザーのTwitterアカウントにステータスアップデートを投稿する |
rate_limit | 指定した Twitter アクセストークンの制限値を取得する |
read_twitter_csv | カンマ区切り値の Twitter データを読み込みます。 |
round_time | 日付と時刻の値を丸める汎用関数 |
search_30day | 過去30日間のデータを検索する (PREMIUM) |
search_fullarchive | fullarchive を検索 (PREMIUM) |
search_tweets | 検索クエリで特定したステータスのツイートデータを取得する。 |
search_users | 検索でヒットしたアカウントのユーザデータを取得します。 |
stopwordslangs | Twitter のストップワード(多言語)データを取得します。 |
stream_tweets | Twitterのライブストリームを収集します。 |
suggested_slugs | ユーザー認証のためのユーザー[アカウント]候補を取得します。 |
trends_available | Twitter のトレンドを、関連する WOEID と共に取得します。 |
ts_data | ツイートデータを時系列的なデータオブジェクトに変換する。 |
ts_plot | ツイートのデータを時系列的なデータオブジェクトとしてプロットします。 |
tweets_data | ユーザデータからツイートデータを抽出する。 |
tweets_with_users | tweets/usersデータのtibblesにデータをパースする |
tweet_shot | ツイート/スレッドの画像をキャプチャする |
users_data | tweets データオブジェクトからユーザデータを抽出する |
write_as_csv | Twitter のデータをカンマ区切りの値ファイルとして保存します。 |