1

我一直在谷歌搜索所有内容,但没有找到任何答案。我正在使用函数 Search(),它似乎没有任何跳过参数。

我不想一次从特定标签中获取每条推文。

4

1 回答 1

2

搜索选项有一个count参数。基于这个答案

var service = new TwitterService(consumerKey, consumerSecrete);
service.AuthenticateWith(token, tokenSecrete);
var options = new SearchOptions { Q = "vucic", count = 100 };

var tweets = service.Search(options);

foreach (var tweet in tweets.Statuses)
{
   Console.WriteLine("{0} says '{1}'", tweet.User.ScreenName, tweet.Text);
}

检查TweetSharp的源代码,我们看到以下内容:

public class SearchOptions
{
    public string Q { get; set; }
    public TwitterGeoLocationSearch Geocode { get; set; }
    public string Lang { get; set; }
    public string Locale { get; set; }
    public TwitterSearchResultType? Resulttype { get; set; }
    public int? Count { get; set; }
    public long? SinceId { get; set; }
    public long? MaxId { get; set; }
    public bool? IncludeEntities { get; set; }
    public string Callback { get; set; }
}   

SinceId正在包装Twitter 1.1 API since_id

since_id 可选

返回 ID 大于(即更新)指定 ID 的结果。可以通过 API 访问的推文数量是有限制的。如果自 since_id 以来已发生 Tweets 限制,则 since_id 将被强制为可用的最旧 ID。

示例值:12345

所以在我看来,您需要您的代码来记住返回的推文的最后一个 id,并通过SinceId设置为该值加上计数的搜索来创建您的“跳过”或分页效果。

请记住,从 Twitter 端返回的推文中可能存在基于时间、位置等的空白。

于 2013-07-08T08:48:23.603 回答