Python

Използване на API за търсене на Google с Python

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

Това има значение. Нейното значение е, че в Google има много полезни данни и това изисква нуждата от изтриване на тези златни данни. Изтритите данни могат да се използват за качествен анализ на данни и откриване на прекрасни прозрения. Също така може да е важно при получаването на чудесна информация за изследователите с един опит.

Говорейки за изстъргване, това може да се направи с инструменти на трети страни. Може да се направи и с библиотека на Python, известна като 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.linuhint.com ”по-рано. С тази настройка бихме получили резултати само от сайта. Ако искате да получите нормалните резултати от общото уеб търсене, щракнете върху „Настройка“ от менюто вляво и след това щракнете върху раздела „Основни положения“. Отидете в раздела „Търсене в цялата мрежа“ и включете тази функция.

Създаване на API ключ

След създаване на персонализирана търсачка и получаване на нейния идентификатор, следващото ще бъде създаването на API ключ. Ключът на API позволява достъп до услугата API и той трябва да бъде в безопасност след създаването, точно като идентификатора на търсачката.

За да създадете API ключ, посетете сайта и кликнете върху бутона „Вземи ключ“.

Създайте нов проект и му дайте описателно име. При щракване върху „Напред“ ще генерирате API ключа.

На следващата страница ще имаме различни опции за настройка, които не са необходими за този урок, така че просто щракнете върху бутона „запазване“ и ние сме готови за работа.

Достъп до API

Добре се справихме с получаването на идентификатор за персонализирано търсене и API ключ. След това ще използваме API.

Докато можете да получите достъп до API с други езици за програмиране, ние ще го направим с Python.

За да имате достъп до API с Python, трябва да инсталирате Google API Client за Python. Това може да се инсталира с помощта на инсталационния пакет pip с командата по-долу:

pip инсталирайте google-api-python-client

След успешно инсталиране вече можете да импортирате библиотеката в нашия код.

Повечето от това, което ще бъде направено, ще бъде чрез функцията по-долу:

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

В горната функция my_api_key и my_cse_id променливите трябва да бъдат заменени съответно от API ключа и идентификатора на търсачката като низови стойности.

Всичко, което трябва да се направи сега, е да извикате функцията, преминаваща в думата за търсене, клавиша api и идентификатора cse.

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

Извикването на функцията по-горе ще търси ключовата дума „Кафе“ и ще присвоява върнатата стойност на резултат променлива, която след това се отпечатва. JSON обект се връща от API за персонализирано търсене, поради което всяко по-нататъшно парсиране на получения обект ще изисква малко познания за JSON.

Това може да се види от извадка от резултата, както се вижда по-долу:

Върнатият по-горе обект JSON е много подобен на резултата от търсенето с Google:

Обобщение

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

Битка за Уеснот 1.13.6 Разработка освободена
Битка за Уеснот 1.13.6, издаден миналия месец, е шестата версия за разработка в 1.13.x серия и предоставя редица подобрения, най-вече на потребителски...
Как да инсталирате League Of Legends на Ubuntu 14.04
Ако сте фен на League of Legends, това е възможност за вас да тествате League of Legends. Имайте предвид, че LOL се поддържа на PlayOnLinux, ако сте п...
Инсталирайте най-новата стратегия за игра OpenRA на Ubuntu Linux
OpenRA е Libre / Free Real Time стратегия за игра, която пресъздава ранните игри на Westwood като класическата Command & Conquer: Red Alert. Разпредел...