gpt4 book ai didi

c# - TweetSharp 2.0 搜索和地理编码

转载 作者:行者123 更新时间:2023-11-30 22:39:19 27 4
gpt4 key购买 nike

我正在尝试让 TweetSharp 对特定区域内的推文执行搜索。不幸的是,这总是返回 0 个结果。

public IEnumerable<TwitterSearchStatus> Search(string terms)
{
TwitterSearchResult result = ServiceManager.Instance.service.Search(terms,100);
IEnumerable<TwitterSearchStatus> returnValue = result.Statuses;
return returnValue;
}

public IEnumerable<TwitterSearchStatus> SearchGeolocation(string terms)
{
return Search(terms + "&geocode=51.50788772102843,-0.102996826171875,50mi");
}

这似乎生成了带有 & 和 % 转义字符的查询,然后服务不会转换这些字符,这意味着我收到错误消息,您必须输入查询:

http://search.twitter.com/search.json?test%26geocode%3D51.50788772102843%2C-0.102996826171875%2C50mi

如果我使用适当的字符运行此查询,它似乎工作正常:

http://search.twitter.com/search.json?test&geocode=51.50788772102843,-0.102996826171875,50mi

有人有什么建议吗?

最佳答案

通过执行以下步骤,我能够让 TweetSharp 的搜索支持地理编码参数:

  1. 下载 TweetSharp 的 latest source code
  2. 将 zip 文件解压到一个目录(我们称之为 tsSource)。
  3. 打开 tsSource\src 文件夹下的 TweetSharp 解决方案。
  4. 在 VS 解决方案资源管理器中,在 .NET 40\TweetSharp\Generated 文件夹中找到 _TwitterService.Search.json
  5. 在文件的第 2 行插入以下内容:TwitterSearchResult, "search", Search, string q, string geocode
  6. 在解决方案资源管理器中,右键单击 .NET 40\TweetSharp\Generated 文件夹中的 TwitterService.tt 并选择运行自定义工具;确认警告对话框。
  7. 在代码生成完成后构建 TweetSharp 项目。

tsSource\bin\lib\4.0 目录中的 TweetSharp.dll 程序集将包含新方法。您可以像这样调用新方法:

service.Search("test", "51.50788772102843,-0.102996826171875,50mi");

或者,您可以使用 Twitterizer支持您的搜索查询。它的搜索功能不会过度转义查询字符串参数,它应该能够与 TweetSharp 并行运行。如果您走这条路,搜索查询代码将如下所示:

//reference Twitterizer2.dll

var tokens = new Twitterizer.OAuthTokens {
ConsumerKey = @"consumerKey",
ConsumerSecret = @"consumerSecret",
AccessToken = @"accessToken",
AccessTokenSecret = @"accessTokenSecret"
};

var response = Twitterizer.TwitterSearch.Search(tokens, "test",
new Twitterizer.SearchOptions {
GeoCode = "51.50788772102843,-0.102996826171875,50mi"
});
if (response.Result != Twitterizer.RequestResult.Success)
return;

foreach (var status in response.ResponseObject)
{
Console.WriteLine(status.Text);
}

关于c# - TweetSharp 2.0 搜索和地理编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5805111/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com