Twitter身份验证凭据

时间:2013-04-18 07:02:17

标签: twitter social-networking twitter-oauth twitter4j

我是社交网络分析和Twitter API的新手。我想收集某些主题的推文。所以我写了以下代码

package com;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.List;

import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.Status;
import twitter4j.Tweet;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;

public class TwitterSearchAdvance {
    public static void main(String[] vishal) throws TwitterException,
            IOException {
        // List<Tweet> Data = new ArrayList<Tweet>();
        StringBuffer stringbuffer = new StringBuffer();
        Twitter twitter = new TwitterFactory().getInstance();

        for (int page = 0; page <= 4; page++) {
            Query query = new Query("Airtel");
            // query.setRpp(100); // 100 results per page

            QueryResult qr = twitter.search(query);
            List<Status> qrTweets = qr.getTweets();
            System.out.println("-------------------" + qrTweets.size());
            // break out if there are no more tweets

            for (Status t : qrTweets) {
                System.out.println(t.getCreatedAt() + ": " + t.getText());

                stringbuffer.append(t);
                stringbuffer.append("\n");
                BufferedWriter bw = new BufferedWriter(new FileWriter(new File(
                        "/home/vishal/FirstDocu.txt"), true));
                bw.write(stringbuffer.toString());
                bw.newLine();
                // bw.write(t.getCreatedAt() + ": " + t.getText());
                bw.close();

            }
        }
    }
}

但是当我运行以下程序时,会出现以下错误

Exception in thread "main" java.lang.IllegalStateException: Authentication credentials are missing. See http://twitter4j.org/configuration.html for the detail.
    at twitter4j.TwitterBaseImpl.ensureAuthorizationEnabled(TwitterBaseImpl.java:200)
    at twitter4j.TwitterImpl.get(TwitterImpl.java:1833)
    at twitter4j.TwitterImpl.search(TwitterImpl.java:282)
    at com.TwitterSearchAdvance.main(TwitterSearchAdvance.java:28)

我需要在我的程序中提供凭据

由于

1 个答案:

答案 0 :(得分:6)

查看http://twitter4j.org/en/configuration.html

中的选项

有多种方法可以为您的计划提供凭据:

  1. 属性文件
  2. ConfigurationBuilder类
  3. 系统属性
  4. 环境变量
  5. 所有详细信息和说明均可在链接中找到