Download - StreamingAPIを使用したTwitter Bot @waketi の紹介
![Page 1: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/1.jpg)
StreamingAPIを使用したTwitterBotの紹介
@kaiba
![Page 2: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/2.jpg)
はじめまして
公な場所で話すのははじめてです。
今日の気分をTwitter4J風に書くと…
![Page 3: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/3.jpg)
今日の気分をTwitter4J風に書くと
ConfigurationBuilder builder = new ConfigurationBuilder();
// access tokenは取得済み(支払い済み)
builder.setOAuthConsumerKey(consumerKey);
builder.setOAuthConsumerSecret(consumerSecret);
builder.setOAuthAccessToken(accessToken);
builder.setOAuthAccessTokenSecret(accessTokenSecret);
Configuration conf = builder.build();
Twitter twitter = new TwitterFactory(conf).getInstance();
try {
list = twitter.getPublicLightningTalk();
// TODO:拍手喝采!
}
注意:オレの考えた最強のAPIであるため、実在しません
![Page 4: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/4.jpg)
例外処理もバッチリ!
catch (NullPointerException e) {
// TODO:会場のみなさんの温かいフォロー }
すべっても大丈夫!!
![Page 5: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/5.jpg)
Twitter botわけちの紹介
@waketi わけち
followingの発言を学習してtweetするbotです
![Page 6: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/6.jpg)
尊敬する先輩方
トロ@どこでもいっしょ 酢鶏 シュウマイ+カラシ ブログ妖精ココロちゃん
![Page 7: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/7.jpg)
こんな感じです
![Page 8: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/8.jpg)
StreamingAPIの使用
数秒でreply! Twitterジャンキーにも
程がある
![Page 9: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/9.jpg)
技術的な情報
マルコフ連鎖 文章組み立て
TF-IDF キーワード抽出(replyの際の話題の選定) 言語 Java(Twitter4J, Sen, ActiveObjects) DB MySQL サーバ Serversman@VPSでubuntu
続きはウェブで! pokosho http://pokosho.com/b/
![Page 10: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/10.jpg)
Twitter4JによるStreamingAPIサンプル
class MentionEventListener extends
UserStreamAdapter {
@Override
public void onStatus(Status from) {
// Statusオブジェクトに対する処理 }
}
UserStreamAdapterを継承したクラスを作成
![Page 11: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/11.jpg)
Twitter4JによるStreamingAPIサンプル
TwitterStreamFactory factory =
new TwitterStreamFactory(conf);
TwitterStream twitterStream =
factory.getInstance();
try {
twitterStream.addListener(
new MentionEventListener();
} catch (TwitterException e) {
// エラー処理
}
// start streaming
twitterStream.user();
addListenerに作成したListenerクラスを渡すだけ!
![Page 12: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/12.jpg)
OAuthとか、jsonとか、 Streamingとか、難しそう…
でもこれがあれば簡単。 そう、Twitter4Jならね!
まとめ
コードも美しく勉強にも最適!
![Page 13: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/13.jpg)
今後の課題
今は300 followings。もっと増えたら? キャラクター、気分、時刻の意識…etc 実はコレ、プロトタイプ+勉強用なんです →ヒミツ!ご期待ください!
![Page 14: StreamingAPIを使用したTwitter Bot @waketi の紹介](https://reader033.vdocuments.net/reader033/viewer/2022051314/559202911a28ab54128b45d5/html5/thumbnails/14.jpg)
おしまい
@waketiをよろしくお願いします!
ありがとうございました
良かったら遊んで見てください。
お団子+お目目ぱっちりな アイコンも募集中です!