RapidMinerでTwitterのデータ収集をしてみた。

####RapidMinerでできること
・Twitterの最新の記事あるいは流行っている記事を検索
・特定のアカウントの記事を取得
・特定のアカウントの情報を取得
・特定のアカウントのFollowingとFollowers情報を取得

では上記できることを順次実際操作していきます。

####操作手順
#####１、RapidMinerとTwitterを連携する
①RepositoryパネルにあるConnectionsを右クリックし、Create Connectionをクリック。
②出てきた画面のConnection TypeをTwitterに設定し、Connection Nameは任意の文字列を記入してCreateボタンをクリック。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/2960db70-72b9-bb4b-4f1e-896844a766ef.png"><img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/da109174-8c19-1290-96f3-10d72d7f99e7.png">
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/bc2b6593-4948-c60a-1655-6c4e953f2aab.png"><img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/7bfeacc1-9fa6-22af-0ab6-b29faeddde75.png">
③SetupタグにあるAccess Tokenの右にあるアイコンをクリックし、出てきたOAuth画面のRequest Access　Tokenボタンをクリック
④Twitterの認証画面でAccess Tokenを取得してから、OAuth画面のCopy Codeに記入し、Completeボタンをクリック
⑤自動的にAccess Tokenが反映されるため、そのまま、Saveボタンをクリックすれば完了
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/50d9c1e6-695a-2198-2b21-af9aeae68743.png"><img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/214a98b6-c832-5be2-0a72-92db30d478fb.png">
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/50db847f-2d14-b865-6cb4-b95e17d62fec.png"><img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/856b31d1-0d03-d94a-258b-f13cfa2462e5.png">

#####２、Twitter記事の検索
①OperatorsパネルにあるSearch TwitterノードをProcessパネルにドラッグアンドドロップする
②画像のようにパラメータを設定する
　・Connection entry：１で作成した【Twitterデータ収集用】のConnectionを使用
　・Query：検索用のキーワード　（好きなアニメ名を例にしました。）
　・result type：最新の記事か、流行っている記事、それとも両方かを選択できる
　・limit：最大何件まで検索するかを設定
　・language：Twitter記事の言語を選択
③Search TwitterノードのoutをProcessパネルの右側にあるresを線で結ぶ。
④メニューバーにある▶実行ボタンをクリック。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/315b1e13-294c-1f7b-5a7d-b399f03925d9.png">
実行後の結果：（データの中身は省略）
記事の内容、投稿するユーザー、リツイート数などの情報があります。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/74e30db3-e2cc-cf39-0ae3-6e8ef09d226b.png">

#####３、特定のアカウントの記事を取得
①OperatorsパネルにあるGet Twitter User StatusesノードをProcessパネルにドラッグアンドドロップする
②画像のようにパラメータを設定する
　・Connection entry：１で作成した【Twitterデータ収集用】のConnectionを使用
　・query type：検索方法はidかnameかを選択できる　（nameを例にします）
　・user：userNameを記入する　（好きな声優さんを例にします）
　・limit：最大何件まで検索するかを設定
③Get Twitter User StatusesノードのoutをProcessパネルの右側にあるresを線で結ぶ。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/5e1a4c2b-bc00-3131-a04c-361b4ad5094a.png">
実行後の結果：（データの中身は省略）
２と同じ記事の内容、投稿するユーザー、リツイート数などの情報があります。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/bc9033e7-306d-a65a-44da-d4c946fd95ab.png">

#####４、特定のアカウントの情報を取得
①OperatorsパネルにあるGet Twitter User DetailsノードをProcessパネルにドラッグアンドドロップする
②画像のようにパラメータを設定する
　・Connection entry：１で作成した【Twitterデータ収集用】のConnectionを使用
　・query type：検索方法はidかnameかを選択できる　（nameを例にします）
　・user：userNameを記入する　（好きな声優さんを例にします）
③Get　Twitter　User　DetailsノードのoutをProcessパネルの右側にあるresを線で結ぶ。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/8167243b-f2cb-2cbe-141e-bb9b073bbdaa.png">
実行後の結果：（データの中身は省略）
ユーザーID、ユーザー名、ユーザー紹介、ツイート数などの情報があります。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/cef9596e-2709-7431-3ead-f0b596c382a3.png">


#####５、FollowingとFollowers情報を取得
①OperatorsパネルにあるGet Twitter RelationsノードをProcessパネルにドラッグアンドドロップする
②画像のようにパラメータを設定する
　・Connection entry：１で作成した【Twitterデータ収集用】のConnectionを使用
　・query type：検索方法はidかnameかを選択できる　（nameを例にします）
　・user：userNameを記入する　（好きな声優さんを例にします）
　・relations：Following（friends）かFollowersを選択できる。　（friendsを例にします）
③Get Twitter User RelationsノードのoutをProcessパネルの右側にあるresを線で結ぶ。
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/54470ec9-b442-b396-6046-223daf71db4a.png">
実行後の結果：（データの中身は省略）
ユーザーIDの情報だけが表示できます。（結果にあるName列は検索のユーザー名で、全部同じです。）
<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531194/517c7198-c51b-e2c7-8d84-8ff543168a27.png">

####まとめ
以上、RapidMinerでTwitterと連携してできることをまとめてみました。
とても簡単でツイータデータを収集できますので、興味がある方も試してみましょう！