C# - Поиск в Google SearchEngine: "Удалённый сервер возвратил ошибку: (403) Запрещено"

Воспользовался единственным, компилируемым в 2022 примером кода, для использования SearchEngine от Google, но сервер запрещает доступ к поиску.

Сообщение об ошибке: "Удалённый сервер возвратил ошибку: (403) Запрещено".

Для поиска воспользовался кодом ниже:

    string GoogleGet(string query = "Hello, world!")
    {
        var results = new List<Result>();

        try
        {
            string customEngineKey = "<cx_string>";//https://programmablesearchengine.google.com/u/3/controlpanel/create/congrats?cx=<cx_string>
            string apiKey = "<api_key>";//https://console.cloud.google.com/apis/credentials?authuser=3&project=<project_name>&supportedpurview=project
            var request = System.Net.WebRequest.Create($"https://www.googleapis.com/customsearch/v1?key={apiKey}&cx={customEngineKey}&q={query}");
            var response = (System.Net.HttpWebResponse)request.GetResponse();//Удалённый сервер возвратил ошибку: (403) Запрещено.
            System.IO.Stream dataStream = response.GetResponseStream();
            System.IO.StreamReader reader = new System.IO.StreamReader(dataStream);
            string responseString = reader.ReadToEnd();
            dynamic jsonData = Newtonsoft.Json.JsonConvert.DeserializeObject(responseString);

            foreach (var item in jsonData.Items)
            {
                results.Add(
                    new Result
                    {
                        Title = item.Title,
                        Link = item.Link,
                        Snippet = item.Snippet,
                    }
                );
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
        return "Results: " + results.Count;
    }

Изменение базовой строки request влечёт за собой ошибку 404, так что, сейчас, ссылка должна быть корректной. Может, кто-то знает, в чём причина, или может посоветовать другой способ поиска из desktop приложения?


Ответы (0 шт):