-1

私のコードは次のとおりです。

     List<Status> list = new ArrayList<Status>();
     User user;
     Twitter twitter = new Twitter();       
     list = twitter.search(string); 

    for(int i=0; i<list.size();i++){
        user=list.get(i).getUser();
        System.out.print(i+1);
        System.out.println(list.get(i));
        System.out.println(list.get(i).getId());
        System.out.println(list.get(i).getUser());
        System.out.println(user.getId());
        System.out.println(user.getCreatedAt());
        System.out.println(user.getLocation());
        System.out.println(user.getFavoritesCount());
    }

問題は、ステータス、ステータスとユーザーのIDを適切に出力することですが、ユーザーID、場所などのユーザー機能はすべてnullとして出力することです。機能を取得するにはどうすればよいですか????

返信ありがとうございます

4

2 に答える 2

0

Twitterの検索方法は、ユーザー情報のごく一部しか返さないという点で珍しいものです。これはTwitterの制限であり、それについてできることは何もありません。

場所などのフィールドは空白になります。

常に画面名を取得します。これを使用して、show()メソッドを介して追加情報を取得できます。例えば

Twitter twitter;
List<String> userNames; // make this list from user.screenName
List<User> fullUserInfo = twitter.users().show(userNames)

JTwitter(http://www.winterwell.com/software/jtwitter.php)の最新のコピーをお持ちの場合は、すべてjavadocにあります。

注意:Twitterの負荷が高い場合、他のメソッドがUserに欠落しているフィールドを返すことがあります。

于 2012-03-02T10:46:27.670 に答える
0

JTwitter API Docsによると、デフォルトのコンストラクターを呼び出すと、ユーザーなしで新しいインスタンスが作成されます。ユーザーデータを取得するには、( SignpostTwitter.IHttpClientに依存する) を使用して Twitter で認証する必要があります。

于 2011-09-26T19:39:56.217 に答える