質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

0回答

1047閲覧

Tweet4jでツイートの検索ができない

mimi_129

総合スコア63

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2019/09/14 08:44

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
Twitter4jを使ってコンソールに検索したツイートの出力を行いたいのですが、エラーが発生します。
どこでエラーが出ているのか分からずお手上げ状態です、、、

発生している問題・エラーメッセージ

xception in thread "main" java.lang.IllegalStateException: Authentication credentials are missing.

該当のソースコード

Java

1import java.util.List; 2 3import twitter4j.Query; 4import twitter4j.QueryResult; 5import twitter4j.Status; 6import twitter4j.Twitter; 7import twitter4j.TwitterException; 8import twitter4j.TwitterFactory; 9import twitter4j.conf.ConfigurationBuilder; 10 11public class Main { 12 private static Twitter twitter; 13 14 public static void main(String[] args) throws TwitterException { 15 if (twitter == null) { 16 //コンフィグ 17 ConfigurationBuilder cb = new ConfigurationBuilder(); 18 cb.setDebugEnabled(true) 19 .setOAuthConsumerKey("XXX") 20 .setOAuthConsumerSecret("XXX") 21 .setOAuthAccessToken("XXX") 22 .setOAuthAccessTokenSecret("XXX"); 23 TwitterFactory tf = new TwitterFactory(cb.build()); 24 twitter = tf.getInstance(); 25 26 Twitter twitter1 = TwitterFactory.getSingleton(); 27 String strText; 28 Query query = new Query("東京"); 29 //検索結果を取得 30 QueryResult result = twitter1.search(query); 31 //検索結果のツイートを取得 32 List<Status> twiSearches = result.getTweets(); 33 //ツイートの表示 34 for (Status tweet1 : twiSearches) { 35 //改行記号を除去(半角スペースに変換) 36 strText = tweet1.getText().replaceAll("\r\n", " "); 37 strText = strText.replaceAll("\r", " "); 38 strText = strText.replaceAll("\n", " "); 39 //タブ記号を除去(半角スペースに変換) 40 strText = strText.replaceAll("\t", " "); 41 //コンソールに出力する(位置情報、日時、ユーザ名、ツイート) 42 System.out.println(tweet1.getGeoLocation() + "\t" + tweet1.getCreatedAt().toString() + "\t" 43 + tweet1.getUser() + "\t" + strText); 44 } 45 } 46 } 47} 48

試したこと

APIを用いての呟きはできましたのでコンフィグは問題ないと思います。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/09/14 13:46

エラーメッセージがすべて Authentication credentials are missing.
nulltemp

2019/09/15 13:43

認証情報を設定したTwitterFactoryからTwitterインスタンスの「twitter」を宣言していますが、そのあとまた別のTwitterFactoryから「twitter1」を宣言し、こちらからツイートを取得しようとしてますね。多分twitter1からでなくtwitterから取得すればちゃんと動くんじゃないんでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問