我试图让所有推文(计数总推特数)属于hashtag。我的功能在这里,如何使用maxID和sinceID获取所有推文。什么是而不是“数”?我不知道。如何使用LinqToTwitter获取所有关于Hashtag的推文
if (maxid != null)
{
var searchResponse =
await
(from search in ctx.Search
where search.Type == SearchType.Search &&
search.Query == "#karne" &&
search.Count == Convert.ToInt32(count)
select search)
.SingleOrDefaultAsync();
maxid = Convert.ToString(searchResponse.SearchMetaData.MaxID);
foreach (var tweet in searchResponse.Statuses)
{
try
{
ResultSearch.Add(new KeyValuePair<String, String>(tweet.ID.ToString(), tweet.Text));
tweetcount++;
}
catch {}
}
while (maxid != null && tweetcount < Convert.ToInt32(count))
{
maxid = Convert.ToString(searchResponse.SearchMetaData.MaxID);
searchResponse =
await
(from search in ctx.Search
where search.Type == SearchType.Search &&
search.Query == "#karne" &&
search.Count == Convert.ToInt32(count) &&
search.MaxID == Convert.ToUInt64(maxid)
select search)
.SingleOrDefaultAsync();
foreach (var tweet in searchResponse.Statuses)
{
try
{
ResultSearch.Add(new KeyValuePair<String, String>(tweet.ID.ToString(), tweet.Text));
tweetcount++;
}
catch { }
}
}
}
这段代码并不真正起作用。它进入了一个无限循环,即设备上的EATS内存。达到超过1.3 GB的RAM,然后崩溃。一直在使用互联网。我究竟做错了什么?我使用了相同的代码 – Everyone
@Everyone搜索字词“twitter”正在带回很多推文。因此,您可以将其更改为“LINQ to Twitter”之类的内容,但不会获得尽可能多的流量。您也可以检查Created At的日期,以确保您只能回溯到目前为止。另一个选择是设置一些推文停止在。此外,请注意,SinceID设置为1,这意味着搜索将继续,直到Twitter停止生成结果或您到达SinceID。为后续呼叫保存最新的SinceID有助于避免请求重复的推文。阅读使用时间表链接了解更多信息。 –
是的,我意识到这一点。它不会停止,直到条件告诉它这样做。有趣的方法。 +1 :) – Everyone