0

公開タイムラインから少なくとも 3200 件の最新ツイートを取得するにはどうすればよいですか? これは私が現在行っていることですが、最新の 200 ツイートしか返されません。

void GetUserTimeLine(TwitterContext ctx) {

            var statusTweets =
               from tweet in twitterCtx.Status
              where tweet.Type == StatusType.User &&
                    tweet.Count == 3200 &&
                    tweet.ScreenName == "abc" 
             select tweet;

            //PrintTweetsResults(statusTweets);
            foreach (var tweet in statusTweets)
            {
                Console.WriteLine(
                    "(" + tweet.StatusID + ")" +
                    "[" + tweet.User.ID + "]" +
                    tweet.User.Name + ", " +
                    tweet.Text + ", " +
                    tweet.CreatedAt);
            }

        // DEFINE FILE PATH NAME
            string dwnloadFilePath = @"C:\temp\Tweet.log";

        // CREATE AN EMPTY TEXT FILE
        FileStream fs1 = null;
        if (!File.Exists(dwnloadFilePath))
        {
            using (fs1 = File.Create(dwnloadFilePath)) ;
        }

        // WRITE DATA INTO TEXT FILE
        if (File.Exists(dwnloadFilePath))
        {
            using (StreamWriter sw = new StreamWriter(dwnloadFilePath))
            {

                statusTweets.ToList().ForEach(
            tweet => sw.Write(
            "{3}, Tweet ID: {2}, Tweet: {1}\n",
            tweet.User.Name, tweet.Text, tweet.StatusID, tweet.CreatedAt));

            }
        }
        Console.ReadLine();
    }

誰かが私を啓発してもらえますか?

ありがとう、10e5x

4

1 に答える 1

6

タイム ラインの最後の 3200 ツイートのいずれかを取得できますが、取得できるのは 200 のバッチでのみです (詳細については、Twitter APIを参照してください)。

最初の 200 エントリを処理したら、最大 ID 値とカウントを指定して再クエリを実行する必要があります。最大 ID は、処理済みの一連のツイートの最小 ID です。

于 2012-11-14T08:11:20.247 に答える