【Twitter4J】Twitterの全ユーザーの公開ツイート(日本のみ)を表示する方法(その2、Streaming APIのsample)


その1に続いてTwitterの全ユーザーの公開ツイート(日本のみ)を表示する方法についての2つ目の方法です。

今回はStreaming APIのsampleを使います。
参考にしたのは以前購入した「Twitter API ポケットリファレンス」です。

Twitter API ポケットリファレンス (POCKET REFERENCE)Twitter API ポケットリファレンス (POCKET REFERENCE)
(2011/07/15)
山本 裕介

商品詳細を見る



Twitter Streaming APIとは、データ解析などで大量のデータを必要とする開発者のために用意されたAPIで、一度接続するとHTTP接続を保ったまま自動的にデータを流し続けてくれます。
Streaming APIには次の種類があります。

1.Streamed Tweets…パブリックなツイートを取得
 ・sample…パブリックなツイートから約1%のツイート
 ・firehose…すべてのパブリックなツイート
 ・filter…指定した条件にマッチするツイート
 ・links…リンクを含むツイート
 ・retweet…リツイート

2.ユーザーストリーム…ユーザーのタイムライン、@関連、DMなどを取得

3.サイトストリーム…多数のユーザーのタイムライン、@関連、DMなどを受信
           多数のユーザー向けのWebサービス用


単にTwitterの全ユーザーの公開ツイートがほしい場合はsample、firehoseとなります。
ただ、firehoseはグーグルなどの一部の大企業が大金を払って手に入れることができるだけなので個人で行う場合はsampleを使うことになります。
全体の約1%のツイートになりますが、常時データを取得できるので少ないと考えるか十分と考えるかは時と場合によりますね。

ではコードです。

import twitter4j.*;


public class TwitterSampleStream {

public static void main(String[] args){

try{

//自動的に認証してくれる
//(バージョン2.2.4以降はgetInstance()ではなくgetSingleton()を推奨)
new TwitterStreamFactory();
TwitterStream twitterstream = TwitterStreamFactory.getSingleton();

twitterstream.addListener(new MyStatusAdapter());
twitterstream.sample();

} catch(Exception e){
e.printStackTrace();
}
}
}

//コンソールに出力する
class MyStatusAdapter extends StatusAdapter {

public void onStatus(Status status){

//ユーザの情報を取得
User user = status.getUser();

//日本のもののみを抽出
//「その1」での方法を参照

//ツイートから改行記号を除去(半角スペースに変換)
String strText = status.getText();
strText = strText.replaceAll("\r\n"," ");
strText = strText.replaceAll("\r"," ");
strText = strText.replaceAll("\n"," ");

//ツイートからタブ記号を除去(半角スペースに変換)
strText = strText.replaceAll("\t"," ");

//コンソールに出力する(タイムゾーン、位置情報、日時、ユーザ名、ツイート)
System.out.println(user.getTimeZone() + "\t" + status.getGeoLocation() + "\t" + status.getCreatedAt() + "\t" + user.getScreenName() + "\t" + strText);
}
}

「日本のもののみを抽出」する箇所については、その1での方法を参照してくださいね。


↓この記事が参考になったら拍手をクリックお願いします。今後のブログ作りに役立てたいので。
関連記事

コメントの投稿

非公開コメント

プロフィール

てぃー

Author:てぃー
詳しい自己紹介:こちら
Twitter:@teapipin


Instagram:@teapipin

follow us in feedly 
にほんブログ村 IT技術ブログへ にほんブログ村 PC家電ブログへ
現在の閲覧者数:

ブログ内検索
今日のアクセス数の多い記事
カレンダー

08月 | 2023年09月 | 10月
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
過去記事ダイジェスト
お知らせ
ツイッター分析の分析結果が引用された研究が学会賞を受賞!!


ツイッター分析の分析結果が新潟大学教育学部の論文に引用
教育の実証研究の場でも高く評価!

ツイッター分析の分析結果が和歌山大学防災研究教育センターの論文に引用
防災の研究において評価!

2015年版ツイッター分析(世界編)が始動!
今回は世界の国別・言語別ツイートを分析!

ツイッター分析の分析結果が慶應義塾大学有名教授の研究論文などに引用
文系の研究までも制覇!

Interval Timer EX
有名雑誌「Mac Fan 2015月2月号」に「インターバルタイマーEX」が3度目の掲載!ポモドーロテクニックに有効!

自作Macアプリ3部作が2014年 Vector 年間ダウンロードランキング Mac トップ100にすべてランクイン

TimeCalcを公開しています!
時間計算、年齢計算、学歴欄作成など。

ツイッター分析の分析結果が人工知能の研究に!
ブログが学会発表で引用されました。

今まで開発したiPhoneアプリのソースコードを公開しています!
勉強に役立ててください。


2013年 Vector 年間ダウンロードランキング Mac トップ100に「デジカメ変更日を撮影日に一括変更 for Mac」と「インターバルタイマーEX」がランクイン

Interval Timer EX
有名雑誌「Mac Fan 2013月4月号」に「インターバルタイマーEX」が2度目の掲載!!

リアルタイムツイッター地図
リアルタイムツイッター地図を公開しています!
位置情報付きツイートをリアルタイムに表示します。

新たなツイッター分析としてイベントツイート分析を行っています!

2012年8月1日(水)開催の「Twitter勉強会」で発表
ツイッター調査:約173万ツイートを調査して分かったTwitterの利用動向 #twtr_hack from teapipin


Interval Timer EX
有名雑誌「Mac Fan 2012月3月号」に「インターバルタイマーEX」が掲載!!



 

はてなブックマークの人気記事