Piton

Korištenje Google pretraživačkog API-ja s Pythonom

Korištenje Google pretraživačkog API-ja s Pythonom
Nije novost da je Google najveća tražilica na svijetu. Mnogi će ljudi uložiti dodatne napore kako bi njihov sadržaj visoko rangirao Google na bilo kojoj drugoj tražilici. Kao rezultat toga, Google ima puno kvalitetnih rezultata za svako pretraživanje, a s izvrsnim algoritmima za rangiranje možete očekivati ​​najbolje rezultate pretraživanja na Googleu.

To ima implikaciju. Njegova implikacija je da na Googleu postoji mnoštvo korisnih podataka i da se zahtijeva brisanje ovih zlatnih podataka. Izgrebani podaci mogu se koristiti za kvalitetnu analizu podataka i otkrivanje prekrasnih uvida. Također može biti važno u jednom pokušaju dobiti velike istraživačke informacije.

Govoreći o struganju, to se može učiniti pomoću alata treće strane. To se može učiniti i s Python bibliotekom poznatom kao Scrapy. Struganje je ocijenjeno jednim od najboljih alata za struganje i može se koristiti za struganje gotovo svake web stranice. Više možete saznati u biblioteci Scrapy.

Međutim, bez obzira na snage ove prekrasne knjižnice. Struganje podataka na Googleu mogao bi biti jedan težak zadatak. Google se teško sruši na bilo koji pokušaj struganja s interneta, osiguravajući da skripte za struganje ne daju čak 10 zahtjeva za grebanjem u sat vremena prije nego što im IP adresa bude zabranjena.  To čini skripte za struganje treće strane i osobnog weba beskorisnima.

Google daje priliku za struganje podataka. Međutim, bilo kakvo struganje koje bi se vršilo mora biti putem sučelja za programiranje aplikacija (API).

Samo ako već ne znate što je sučelje za programiranje aplikacija, nema razloga za brigu jer ću dati kratko objašnjenje. Po definiciji, API je skup funkcija i postupaka koji omogućuju stvaranje aplikacija koje pristupaju značajkama ili podacima operativnog sustava, aplikacije ili druge usluge. U osnovi, API vam omogućuje pristup krajnjem rezultatu procesa bez potrebe da budete uključeni u te procese. Na primjer, temperaturni API pružit će vam Celzijusove / Fahrenheitove vrijednosti mjesta, a da tamo ne morate ići s termometrom kako biste sami napravili mjerenja.

Uvodeći ovo u opseg struganja podataka s Googlea, API koji bismo koristili omogućuje nam pristup potrebnim informacijama bez potrebe za pisanjem bilo kakve skripte za struganje stranice rezultata Google pretraživanja. Putem API-ja možemo jednostavno imati pristup krajnjem rezultatu (nakon što Google izvede "struganje" na njihovom kraju) bez pisanja bilo kakvog koda za struganje web stranica.

Iako Google ima puno API-ja za različite svrhe, mi ćemo koristiti JSON API prilagođenog pretraživanja u svrhu ovog članka. Više informacija o ovom API-ju možete pronaći ovdje.

Ovaj API omogućuje nam da besplatno izvršimo 100 upita za pretraživanje dnevno, a dostupni su i cjenovni planovi za postavljanje dodatnih upita ako je potrebno.

Izrada tražilice za prilagođeno pretraživanje

Da bismo mogli koristiti JSON API za prilagođeno pretraživanje, trebao bi nam ID tražilice za prilagođeno pretraživanje. Međutim, prvo bismo morali stvoriti prilagođenu pretraživačicu, što se može učiniti ovdje.

Kada posjetite stranicu Prilagođena tražilica, kliknite gumb "Dodaj" da biste stvorili novu tražilicu.

U okvir "web mjesta za pretraživanje" jednostavno unesite "www.linuxhint.com "i u okvir" Naziv tražilice "unesite bilo koji opisni naziv po vašem izboru (Google bi bio poželjniji).

Sada kliknite "Stvori" da biste stvorili prilagođenu tražilicu i kliknite gumb "upravljačka ploča" na stranici da biste potvrdili uspjeh izrade.

Vidjeli biste odjeljak "ID tražilice" i ID ispod njega, to je ID koji bi nam trebao API, a pozvali bismo se na njega kasnije u ovom vodiču. ID tražilice treba držati privatnim.

Prije nego što odemo, sjetimo se da smo stavili „www.linuhint.com ”ranije. S tom postavkom rezultate bismo dobili samo sa web mjesta. Ako želite dobiti uobičajene rezultate ukupnog pretraživanja weba, kliknite "Postavljanje" s izbornika s lijeve strane, a zatim kliknite karticu "Osnove". Idite na odjeljak "Pretražite cijeli web" i uključite ovu značajku.

Stvaranje API ključa

Nakon stvaranja tražilice za prilagođeno pretraživanje i dobivanja njezinog ID-a, slijedi stvaranje API ključa. API ključ omogućuje pristup API usluzi i treba ga čuvati nakon stvaranja, baš kao i ID tražilice.

Da biste stvorili API ključ, posjetite web mjesto i kliknite gumb "Nabavite ključ".

Stvorite novi projekt i dajte mu opisni naziv. Klikom na "next", generirat će se API ključ.

Na sljedećoj stranici imali bismo različite mogućnosti postavljanja koje nisu potrebne za ovaj vodič, pa samo kliknite gumb "spremi" i spremni smo za početak.

Pristup API-ju

Dobro smo se snašli u dobivanju ID-a prilagođenog pretraživanja i API ključa. Dalje ćemo koristiti API.

Iako API-ju možete pristupiti s drugim programskim jezicima, to ćemo činiti s Pythonom.

Da biste mogli pristupiti API-ju s Pythonom, morate instalirati Google API Client za Python. To se može instalirati pomoću pip install paketa s naredbom u nastavku:

pip instalirati google-api-python-client

Nakon uspješne instalacije, sada možete uvesti knjižnicu u naš kôd.

Većina onoga što će se učiniti bilo bi putem funkcije u nastavku:

iz googleapiclient.otkriće uvoz graditi
my_api_key = "Vaš API ključ"
my_cse_id = "Vaš CSE ID"
def google_search (search_term, api_key, cse_id, ** kwargs):
usluga = izgradnja ("customsearch", "v1", developerKey = api_key)
res = usluga.cse ().popis (q = termin_traženja, cx = cse_id, ** kwargs).izvršiti()
povratak res

U gornjoj funkciji, my_api_key i my_cse_id varijable bi trebale biti zamijenjene API ključem i ID-om tražilice kao vrijednosti niza.

Sve što sada treba učiniti je pozvati funkciju koja prosljeđuje pojam za pretraživanje, api ključ i cse id.

rezultat = google_search ("Kava", my_api_key, my_cse_id)
ispis (rezultat)

Gornji poziv funkcije tražio bi ključnu riječ "Kava" i dodijelio vraćenu vrijednost proizlaziti varijabla koja se zatim ispisuje. API prilagođenog pretraživanja vraća JSON objekt, pa bi svako daljnje raščlanjivanje rezultirajućeg objekta zahtijevalo malo znanja o JSON-u.

To se može vidjeti na uzorku rezultata kao što se vidi u nastavku:

Gore vraćeni JSON objekt vrlo je sličan rezultatu iz Google pretraživanja:

Sažetak

Grebanje informacija za Google zapravo nije vrijedno stresa. API prilagođenog pretraživanja olakšava život svima, jer je jedina poteškoća u raščlanjivanju JSON objekta za potrebne informacije. Podsjećamo, uvijek imajte na umu da vrijednosti ID-a i API ključa prilagođene tražilice trebaju biti privatne.

Kako koristiti AutoKey za automatizaciju Linux igara
AutoKey je uslužni program za automatizaciju radne površine za Linux i X11, programiran na Python 3, GTK i Qt. Koristeći njegovu skriptiranje i MACRO ...
Kako prikazati brojač FPS-a u Linux igrama
Linux gaming dobio je velik poticaj kada je Valve najavio Linux podršku za Steam klijent i njihove igre 2012. godine. Od tada su mnoge AAA i indie igr...
Kako preuzeti i igrati Sid Meier's Civilization VI na Linuxu
Uvod u igru Civilization 6 moderan je pogled na klasični koncept predstavljen u seriji igara Age of Empires. Ideja je bila prilično jednostavna; započ...