概述:通过bing的图片搜索引擎,开发自己的图片搜索应用程序。bing的图片搜索接口是收费的,但是初次注册使用,key可以免费试用30天

程序运行效果如下

一,代码如下

static SearchResult BingImageSearch(string searchQuery)
        {
            // Construct the URI of the search request
            var uriQuery = uriBase + "?q=" + Uri.EscapeDataString(searchQuery);
            // Perform the Web request and get the response
            WebRequest request = HttpWebRequest.Create(uriQuery);
            request.Headers["Ocp-Apim-Subscription-Key"] = accessKey;
            HttpWebResponse response = (HttpWebResponse)request.GetResponseAsync().Result;
            string json = new StreamReader(response.GetResponseStream()).ReadToEnd();
            // Create result object for return
            var searchResult = new SearchResult()
            {
                jsonResult = json,
                relevantHeaders = new Dictionary<String, String>()
            };

// Extract Bing HTTP headers
            foreach (String header in response.Headers)
            {
                if (header.StartsWith("BingAPIs-") || header.StartsWith("X-MSEdge-"))
                    searchResult.relevantHeaders[header] = response.Headers[header];
            }
            return searchResult;
        }

通过该方法返回一个json格式的搜索结果

二、点击搜索的时候

private void Button_Click(object sender, RoutedEventArgs e)
        {
            searchInfo.List.Clear();
            string searchTerm = searchInfo.SearchTerm;
            SearchResult result = BingImageSearch(searchTerm);
            JObject jo = (JObject)JsonConvert.DeserializeObject(result.jsonResult);
            IJEnumerable<JToken> values = jo["value"]; ;
            foreach (JToken jk in values)
            {
                string imageUrl = jk["contentUrl"].ToString();
                string imageTitle = jk["name"].ToString();
                SearchItemResult sr = new SearchItemResult();
                sr.Url = imageUrl;
                sr.Title = imageTitle;
                searchInfo.List.Add(sr);
            }

把搜索结果添加到list里面。
        }

在这不多说了,大家想看源码,可以直接到这个地址下载:http://download.csdn.net/download/soft_123456/10113322

谢谢!有任何问题可以给我留言。尽量在最短的时间内回复大家。

最新文章

  1. 【2016-10-27】【坚持学习】【Day14】【VS 配置管理器 AssemblyInfo 】
  2. java学习第一天 回顾以前
  3. Sublime P4语法高亮设置
  4. Xmemcached的FAQ和性能调整建议
  5. char、varchar、text和nchar、nvarchar、ntext的区别
  6. PHP开发网站之微信登录、绑定
  7. redis入侵小结
  8. 模拟操作网页 webBrowser
  9. HTML5 的data-* 自定义属性
  10. Server-U_详细配置
  11. 【HDOJ】1074 Doing Homework
  12. (转)Javascript 面向对象编程(一):封装(作者:阮一峰)
  13. Taum and B&#39;day
  14. typecheck()简析
  15. python enumerate 枚举函数用法
  16. C#制表符过滤处理方法
  17. JS 将canvas画布保存到本地
  18. Python3 系列之 面向对象篇
  19. jmeter如何玩?
  20. CCF2015122消除类游戏(C语言版)

热门文章

  1. 「CF 961G」Partitions
  2. 20175212童皓桢 实验三敏捷开发与XP实践实验报告
  3. Why are dashes preferred for CSS selectors / HTML attributes?
  4. Oracle数据库密码过期重置
  5. openssl-1.0.1u静态库编译
  6. Android-Universal-Image-Loader的缓存处理机制与使用 LruCache 缓存图片
  7. Charles解析https,unknown错误解决办法
  8. python 逻辑运算符and or
  9. leetcode886可能的二分法
  10. java的引用传递