public SearchBE Search(string query) { SearchBE r = new SearchBE(); try { string apiKey = AppSettingsHelper.GetValue("GoogleAPIKey"); string searchEngineID = AppSettingsHelper.GetValue("GoogleSearchEngineID"); CustomsearchService service = new CustomsearchService(new BaseClientService.Initializer { ApiKey = apiKey }); CseResource.ListRequest rq = service.Cse.List(query); rq.Cx = searchEngineID; Search search = rq.Execute(); if (search != null) { r.SearchEngine = "Google"; r.Query = query; r.TotalResult = search.SearchInformation.TotalResults; r.FormatTotalResult = search.SearchInformation.FormattedTotalResults; r.Time = search.SearchInformation.SearchTime; } } catch (Exception e) { r.SearchEngine = "Google"; r.Query = query + e.Message; r.TotalResult = 0; r.Time = 0; } return(r); }
public SearchBE Search(string query) { SearchBE r = new SearchBE(); try { HttpClient GoogleSearch = new HttpClient() { BaseAddress = new Uri("https://www.googleapis.com/") }; JObject result = new JObject(); string key = ConfigurationManager.AppSettings.Get("GoogleAPIKey"); string cx = ConfigurationManager.AppSettings.Get("GoogleAPIcx"); var response = GoogleSearch.GetAsync("customsearch/v1?key=" + key + "&cx=" + cx + "&q=" + query).Result; response.EnsureSuccessStatusCode(); if (response.IsSuccessStatusCode) { var jsonString = response.Content.ReadAsStringAsync().Result; result = JsonConvert.DeserializeObject <JObject>(jsonString); if (result != null) { r.searchEngine = "Google"; r.query = query; r.resultCount = long.Parse(result["queries"]["request"][0]["totalResults"].ToString()); } } else { r.searchEngine = "Google"; r.query = query; r.resultCount = 0; } } catch (Exception e) { r.searchEngine = "Google"; r.query = query + e.Message; r.resultCount = 0; } return(r); }
public SearchBE Search(string query) { SearchBE r = new SearchBE(); try { string accessKey = AppSettingsHelper.GetValue("BINGAccessKey"); string uriBase = AppSettingsHelper.GetValue("BINGUriBase"); var uriQuery = uriBase + "?q=" + Uri.EscapeDataString(query); WebRequest rq = HttpWebRequest.Create(uriQuery); rq.Headers["Ocp-Apim-Subscription-Key"] = accessKey; HttpWebResponse rp = (HttpWebResponse)rq.GetResponseAsync().Result; string json = new StreamReader(rp.GetResponseStream()).ReadToEnd(); string uniqueProperty = "totalEstimatedMatches"; int index = json.IndexOf(uniqueProperty) + uniqueProperty.Length + 3; int endIndex = json.IndexOf(",", index); string value = json.Substring(index, endIndex - index); if (value != null) { r.SearchEngine = "BING"; r.Query = query; r.TotalResult = Convert.ToInt64(value); r.FormatTotalResult = String.Format("{0:0,0}", r.TotalResult); r.Time = 0; } } catch (Exception e) { r.SearchEngine = "BING"; r.Query = query + e.Message; r.TotalResult = 0; r.Time = 0; } return(r); }
public SearchBE Search(string query) { SearchBE r = new SearchBE(); try { string uriBase = ConfigurationManager.AppSettings.Get("BINGUriBase"); string uriQuery = uriBase + "?q=" + Uri.EscapeDataString(query); WebRequest request = WebRequest.Create(uriQuery); request.Headers["Ocp-Apim-Subscription-Key"] = ConfigurationManager.AppSettings.Get("BINGAPIKey"); HttpWebResponse response = (HttpWebResponse)request.GetResponseAsync().Result; string jsonString = new StreamReader(response.GetResponseStream()).ReadToEnd(); JObject result = JsonConvert.DeserializeObject <JObject>(jsonString); if (result != null) { r.searchEngine = "BING"; r.query = query; r.resultCount = long.Parse(result["webPages"]["totalEstimatedMatches"].ToString()); } else { r.searchEngine = "BING"; r.query = query; r.resultCount = 0; } } catch (Exception e) { r.searchEngine = "BING"; r.query = query + e.Message; r.resultCount = 0; } return(r); }