Одна из возможностей - настроить пользовательскую поисковую систему Google .Затем вам также необходимо создать ключ разработчика, который, как я считаю, выполняется в консоли .
После настройки вы можете выполнить вызов в стиле REST с кодом, подобным следующему, который извлекает результаты в виде JSON:
WebClient w = new WebClient();
string result;
string uri;
string googleAPIKey = "your developer key";
string googleEngineID = "your search engine id";
string template = "https://www.googleapis.com/customsearch/v1?key={0}&cx={1}&q={2}&start={3}&alt=json";
int startIndex = 1;
int gathered = 0;
uri = String.Format(template, googleAPIKey, googleEngineID, "yoursearchstring", startIndex);
result = w.DownloadString(uri);
Для извлечения информации из результатов JSON выможно использовать что-то вроде Json.NET .Это делает чтение информации чрезвычайно простым:
JObject o = JObject.Parse(result);
Затем вы можете получить прямой доступ к необходимой информации с помощью одной строки кода.
Важной информацией является то, что бесплатное использование API поиска крайне ограничено (100 запросов в день).Так что для реального приложения, вероятно, придется заплатить за поиск.Но в зависимости от того, как вы его используете, может быть, достаточно 100 запросов в день.Я написал небольшой коллаж, используя API поиска Google для поиска интересующей информации о сайте Stackoverflow, а затем использовал StackExchange API для получения информации.Для этого личного использования это работает очень хорошо.