1
我想使用Bing API进行特定于站点的搜索。这里是我的程序:如何使用Bing API执行特定于站点的搜索?
namespace Microsoft.Samples.BingSearch
{ class Program
{
static void Main(string[] args)
{
string rootUri = "https://api.datamarket.azure.com/Bing/Search";
var bingContainer = new Bing.BingSearchContainer(new Uri(rootUri));
var accountKey = "xxxxxxx";
bingContainer.Credentials = new NetworkCredential(accountKey, accountKey);
string query = "SQL Server";
var t = bingContainer.News(query, null, null, null, null, null, null, null, null);
t.AddQueryOption("site", "computerworld.com");
var resultNews = t.Execute();
foreach(var item in resultNews)
{
var g = item.ID;
Console.WriteLine(item.Title + " - " + item.Source);
}
}
}
}
该程序运行(假设你输入一个有效的帐户密钥)并返回结果。不幸的是,它不会将结果限制在computerworld.com。它仿佛线:
t.AddQueryOption("site", "computerworld.com");
被忽略。
我在做什么错?
注:我知道我可以通过自己构建URI而不是使用库来完成特定于站点的搜索。我想知道的是如何正确使用这个库进行网站特定的搜索。
这不起作用,它会生成一个不正确的RequestURI,如下所示: https://api.datamarket.azure.com/Bing/Search/News()?Query='site%3Acomputerworld.comSQL%20Server' – JonnyBoats
@ JonnyBoats这是正确的方法。最初显示的代码在字符串连接中缺少一个空格,因此它不能正确生成查询。 –
@ScottDorman:谢谢你在我吃晚饭的时候背对背。 :} – J0e3gan