4

我是社交网络分析和推特 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)

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

谢谢

4

1 回答 1

6

看看这里的选项http://twitter4j.org/en/configuration.html

有多种方法可以为您的程序提供凭据:

  1. 属性文件
  2. 配置生成器类
  3. 系统属性
  4. 环境变量

所有详细信息和说明都可以在链接中找到

于 2013-04-18T07:39:10.920 回答