Python

Использование Google Search API с Python

Использование Google Search API с Python
Не новость, что Google - крупнейшая поисковая система в мире. Многие люди сделают все возможное, чтобы их контент получил более высокий рейтинг в Google перед любой другой поисковой системой. В результате у Google есть много качественных результатов для каждого поиска, а благодаря отличным алгоритмам ранжирования вы можете рассчитывать на получение лучших результатов поиска в Google.

Это имеет значение. Это означает, что в Google существует множество полезных данных, и это требует очистки этих золотых данных. Полученные данные можно использовать для качественного анализа данных и открытия замечательных идей. Это также может быть важно для получения большой исследовательской информации с одной попытки.

Говоря о парсинге, это можно сделать с помощью сторонних инструментов. Это также можно сделать с помощью библиотеки Python, известной как Scrapy. Scrapy считается одним из лучших инструментов для очистки и может использоваться для очистки практически любой веб-страницы. Вы можете узнать больше о библиотеке Scrapy.

Однако, несмотря на сильные стороны этой замечательной библиотеки. Сбор данных в Google может оказаться сложной задачей. Google жестко пресекает любые попытки очистки веб-страниц, гарантируя, что скрипты очистки не сделают даже 10 запросов на очистку за час до того, как IP-адрес будет заблокирован.  Это делает сторонние и личные скрипты парсинга бесполезными.

Google дает возможность очищать информацию. Тем не менее, любая очистка, которая будет выполняться, должна осуществляться через интерфейс прикладного программирования (API).

На всякий случай, если вы еще не знаете, что такое интерфейс прикладного программирования, беспокоиться не о чем, я дам краткое объяснение. По определению, API - это набор функций и процедур, которые позволяют создавать приложения, которые получают доступ к функциям или данным операционной системы, приложения или другой службы. По сути, API позволяет вам получить доступ к конечному результату процессов, не участвуя в этих процессах. Например, температурный API предоставит вам значения Цельсия / Фаренгейта для места без необходимости идти туда с термометром, чтобы сделать измерения самостоятельно.

Включив это в объем сбора информации из Google, API, который мы будем использовать, позволяет нам получить доступ к необходимой информации без необходимости писать какой-либо скрипт для очистки страницы результатов поиска Google. Через API мы можем просто получить доступ к конечному результату (после того, как Google выполнит «парсинг» на их конце) без написания кода для очистки веб-страниц.

Хотя у Google есть множество API для разных целей, мы собираемся использовать JSON API пользовательского поиска для целей этой статьи. Более подробную информацию об этом API можно найти здесь.

Этот API позволяет нам делать 100 поисковых запросов в день бесплатно, с тарифными планами, доступными для выполнения дополнительных запросов при необходимости.

Создание системы пользовательского поиска

Чтобы использовать JSON API пользовательского поиска, нам потребуется идентификатор системы пользовательского поиска. Однако сначала нам нужно создать систему пользовательского поиска, что можно сделать здесь.

Когда вы посещаете страницу системы пользовательского поиска, нажмите кнопку «Добавить», чтобы создать новую поисковую систему.

В поле «Сайты для поиска» просто введите «www.linuxhint.com »и в поле« Название поисковой системы »введите любое описательное имя по вашему выбору (предпочтительнее Google).

Теперь нажмите «Создать», чтобы создать систему пользовательского поиска, и нажмите кнопку «Панель управления» на странице, чтобы подтвердить успешность создания.

Вы увидите раздел «Идентификатор поисковой системы» и идентификатор под ним, это идентификатор, который нам понадобится для API, и мы будем ссылаться на него позже в этом руководстве. Идентификатор поисковой системы должен быть конфиденциальным.

Прежде чем мы уйдем, помните, что мы добавили «www.линухинт.com »ранее. С этой настройкой мы будем получать результаты только с сайта. Если вы хотите получить нормальные результаты полного веб-поиска, нажмите «Настройка» в меню слева, а затем перейдите на вкладку «Основные». Перейдите в раздел «Искать во всем Интернете» и включите эту функцию.

Создание ключа API

После создания системы пользовательского поиска и получения ее идентификатора следующим шагом будет создание ключа API. Ключ API позволяет получить доступ к службе API, и его следует хранить в безопасности после создания, как и идентификатор поисковой системы.

Чтобы создать ключ API, посетите сайт и нажмите кнопку «Получить ключ».

Создайте новый проект и дайте ему описательное имя. Нажав «Далее», вы получите ключ API.

На следующей странице у нас будут разные параметры настройки, которые не нужны для этого руководства, поэтому вы просто нажимаете кнопку «Сохранить», и мы готовы к работе.

Доступ к API

Мы успешно получили идентификатор пользовательского поиска и ключ API. Далее мы собираемся использовать API.

Хотя вы можете получить доступ к API с помощью других языков программирования, мы собираемся сделать это с помощью Python.

Чтобы иметь доступ к API с помощью Python, вам необходимо установить клиент Google API для Python. Его можно установить с помощью пакета установки pip с помощью следующей команды:

pip установить google-api-python-client

После успешной установки теперь вы можете импортировать библиотеку в наш код.

Большая часть того, что будет сделано, будет выполняться с помощью функции ниже:

из googleapiclient.сборка импорта обнаружения
my_api_key = "Ваш ключ API"
my_cse_id = "Ваш идентификатор СПП"
def google_search (search_term, api_key, cse_id, ** kwargs):
service = build ("customsearch", "v1", developerKey = api_key)
res = service.cse ().список (q = search_term, cx = cse_id, ** kwargs).выполнять()
вернуть res

В приведенной выше функции my_api_key а также my_cse_id переменные следует заменить на ключ API и идентификатор поисковой системы соответственно в виде строковых значений.

Все, что нужно сделать сейчас, это вызвать функцию, передав поисковый запрос, ключ api и идентификатор cse.

result = google_search ("Кофе", my_api_key, my_cse_id)
печать (результат)

Приведенный выше вызов функции будет искать ключевое слово «Кофе» и присваивать возвращаемое значение результат переменная, которая затем печатается. Объект JSON возвращается API пользовательского поиска, поэтому для дальнейшего анализа полученного объекта потребуется небольшое знание JSON.

Это можно увидеть из образца результата, показанного ниже:

Возвращенный выше объект JSON очень похож на результат поиска Google:

Резюме

Поиск информации в Google на самом деле не стоит стресса. API пользовательского поиска упрощает жизнь для всех, поскольку единственная трудность заключается в синтаксическом анализе объекта JSON на предмет необходимой информации. Напоминаем, что всегда не забывайте сохранять конфиденциальность идентификатора системы пользовательского поиска и ключей API.

5 лучших эргономичных компьютерных мышей для Linux
Вызывает ли длительное использование компьютера боль в запястье или пальцах?? Вы страдаете от скованности суставов и постоянно должны пожимать руки? В...
Как изменить настройки мыши и сенсорной панели с помощью Xinput в Linux
Большинство дистрибутивов Linux по умолчанию поставляются с библиотекой libinput для обработки событий ввода в системе. Он может обрабатывать события ...
Переназначьте кнопки мыши по-разному для разных программ с помощью X-Mouse Button Control
Может быть, вам нужен инструмент, который мог бы изменять управление вашей мышью с каждым приложением, которое вы используете. В этом случае вы можете...