Oglas

Web strugači automatski prikupljaju informacije i podatke koji su obično dostupni samo posjetom web mjestu u pregledniku. Čineći ovo samostalno, skripte za struganje putem weba otvaraju svijet mogućnosti u iskopavanju podataka, analizi podataka, statističkoj analizi i puno više.

Zašto je web struganje korisno

Živimo u danu i starosti u kojem su informacije lako dostupne nego bilo koje drugo vrijeme. Infrastruktura koja se koristi za unošenje ovih riječi koje čitate vodi je ka više znanja, mišljenja i vijesti nego što je ikada u povijesti ljudi bila dostupna ljudima.

Toliko da je mozak najpametnije osobe poboljšao do 100% efikasnosti (netko bi trebao snimiti film u vezi s tim), još uvijek ne bi uspjeli držati 1/1000 podataka pohranjenih na internetu u Sjedinjenim Državama sama.

Cisco procijenjeno u 2016 taj promet na Internetu premašio je jedan zettabajt, što je 1.000.000.000.000.000.000 bajtova, ili jedan sekstilski bajt (naprijed, kličite na sextillion). Jedan zettabajt je oko četiri tisuće godina koji struji Netflix. To bi bilo ekvivalentno ako biste, neustrašivi čitatelju, Ured usmjerili od početka do kraja bez zaustavljanja 500.000 puta.

instagram viewer

Internet vizualizacija podataka zettabyte exabyte petabyte terabyte gigabyte megabyte
Kreditna slika: Cisco / Zore Zettabytea

Svi ovi podaci i informacije su vrlo zastrašujući. Nije sve u redu. Nije puno toga relevantno za svakodnevni život, ali sve više i više uređaja ove podatke isporučuje sa servera širom svijeta upravo u naše oči i u naš mozak.

Kako naše oči i mozak ne mogu stvarno podnijeti sve ove informacije, mrežno struganje pojavilo se kao korisna metoda za programsko prikupljanje podataka s interneta. Web scraping je apstraktni pojam za definiranje čina vađenja podataka s web stranica kako bi se lokalno spremili.

Razmislite o vrsti podataka i vjerojatno ih možete prikupiti struganjem po webu. Popisi nekretnina, sportski podaci, adrese e-pošte tvrtki na vašem području, pa čak i stihovi vašeg omiljenog izvođača mogu se potražiti i spremiti pisanjem malog scenarija.

Kako preglednik dobiva web podatke?

Da bismo razumjeli mrežne strugalice, morat ćemo razumjeti kako web prvo funkcionira. Da biste došli do ove web stranice, ili ste upisali “makeuseof.com” u vaš web preglednik ili ste kliknuli vezu s druge web stranice (recite nam gdje, ozbiljno želimo znati). Bilo kako bilo, sljedećih nekoliko koraka su isti.

Prvo će vaš preglednik uzeti URL koji ste unijeli ili kliknuli (Pro-tip: zadržite pokazivač iznad veze da biste vidjeli URL na pri dnu preglednika prije nego što ga kliknete kako ne biste dobili punkd) i oblikujte "zahtjev" za slanje na poslužitelj. Poslužitelj će zatim obraditi zahtjev i poslati odgovor natrag.

Odgovor poslužitelja sadrži HTML, JavaScript, CSS, JSON i ostale podatke potrebne da bi vaš web preglednik mogao oblikovati web stranicu u vaše zadovoljstvo gledanja.

Uvid u web elemente

Moderni preglednici omogućuju nam neke detalje vezane uz ovaj postupak. U pregledniku Google Chrome na sustavu Windows možete pritisnuti Ctrl + Shift + I ili desnim klikom i odaberite Pregledati. Prozor će tada prikazati zaslon koji izgleda ovako.

Pregledajte web-element pomoću preglednika Google Chrome

Lista opcija na karticama nalazi se na vrhu prozora. Zanimljivo je upravo to Mreža kartica. Tako ćete dobiti detalje o HTTP prometu kao što je prikazano u nastavku.

Pregledajte internetski zahtjev putem preglednika Google Chrome

U donjem desnom kutu vidimo podatke o HTTP zahtjevu. URL je ono što očekujemo, a „metoda“ je HTTP „GET“ zahtjev. Kôd statusa iz odgovora naveden je kao 200, što znači da je poslužitelj vidio zahtjev kao valjan.

Ispod statusnog koda nalazi se udaljena adresa, koja je javna IP adresa poslužitelja makeuseof.com. Klijent dobiva ovu adresu putem DNS protokol Kako promijeniti svoje DNS postavke za povećanje brzinePromjena postavki DNS-a manja je izmjena koja može imati veliki utjecaj na svakodnevne brzine interneta. Evo kako to učiniti. Čitaj više .

Sljedeći odjeljak navodi detalje o odgovoru. Zaglavlje odgovora ne sadrži samo statusni kôd, već i vrstu podataka ili sadržaj koji odgovor sadrži. U ovom slučaju promatramo "text / html" sa standardnim kodiranjem. To nam govori da je odgovor doslovno HTML kôd za prikaz web stranice.

Pregledajte html odgovor web zahtjeva pomoću Google Chromea

Druge vrste odgovora

Uz to, poslužitelji mogu vratiti objekte podataka kao odgovor na GET zahtjev, umjesto samo HTML-a za prikazivanje web stranice. Internetska stranica Sučelje za programiranje aplikacija (ili API) Što su API-ji i kako otvoreni API-ji mijenjaju internetJeste li se ikad zapitali kako programi na vašem računalu i web stranice koje posjetite međusobno "razgovaraju"? Čitaj više obično koristi ovu vrstu razmjene.

Pregledajući karticu Mreža kao što je prikazano gore, možete vidjeti postoji li takva vrsta razmjene. Prilikom istrage CrossFit Otvorena ploča s najboljim rezultatima prikazan je zahtjev za popunjavanje tablice podacima.

Pregledajte podatke zahtjeva web zahtjeva putem Google Chromea

Klikom na odgovor prikazuju se JSON podaci umjesto HTML koda za prikazivanje web stranice. Podaci u JSON-u su niz oznaka i vrijednosti na slojevitom, obrisanom popisu.

Provjerite mrežni odgovor JSON pomoću preglednika Google Chrome

Ručno raščlanjivanje HTML koda ili prolazak kroz tisuće parova ključeva / vrijednosti JSON-a mnogo je poput čitanja Matrice. Na prvi pogled to izgleda kao kreten. Možda je previše podataka za ručno dešifriranje.

Web strugači u spas!

Prije nego što odete tražiti plavu tabletu da se odavde makne, trebali biste znati da ne moramo ručno dekodirati HTML kôd! Neznanje nije blaženstvo, a ovaj biftek je ukusno.

Web strugač može izvesti te teške zadatke za vas Scrapestack API olakšava struganje web stranica radi podatakaTražite moćan i pristupačan web strugač? API scrapestack slobodno se pokreće i nudi mnogo zgodnih alata. Čitaj više . Okviri za struganje dostupni su na Python-u, JavaScript-u, čvoru i drugim jezicima. Jedan od najlakših načina za početak struganja je upotreba Python-a i Beautiful Soup-a.

Izrada web stranice Python-om

Za početak je potrebno samo nekoliko redaka koda, pod uvjetom da su instalirani Python i BeautifulSoup. Evo malog skripta za dobivanje izvora web stranice i dopuštanja BeautifulSoupu da ga procijeni.

iz bs4 uvoza BeautifulSoup. uvoz zahtjeva url = " http://www.athleticvolume.com/programming/" content = questions.get (url) juha = BeautifulSoup (sadržaj.text) print (juha)

Vrlo jednostavno, postavljamo GET zahtjev na URL i zatim postavljamo odgovor u objekt. Ispis objekta prikazuje HTML izvornog koda URL-a. Proces je isti kao da smo ručno otišli na web mjesto i kliknuli Pogledaj izvor.

Konkretno, ovo je web stranica koja svakodnevno postavlja treninge u stilu CrossFit, ali samo jednu dnevno. Možemo izraditi naš strugač kako bismo dobili vježbu svaki dan, a zatim ga dodati na objedinjeni popis vježbi. U osnovi, možemo stvoriti tekstualnu povijesnu bazu vježbi kroz koju lako pretražujemo.

Čar BeaufiulSoup je sposobnost pretraživanja svih HTML koda pomoću ugrađene funkcije findAll (). U ovom konkretnom slučaju, web stranica koristi nekoliko oznaka "sqs-block-content". Stoga se skripta mora provući kroz sve te oznake i pronaći onu koja nam je zanimljiva.

Uz to, postoji niz

oznake u odjeljku. Skripta može dodati sav tekst svake od tih oznaka u lokalnu varijablu. Da biste to učinili, skriptu dodajte jednostavnu petlju:

za div_class u supu.findAll ('div', {'class': 'sqs-block-content'}): recordThis = Netačno za p in div_class.findAll ('p'): ako je 'PROGRAM' u p.text.upper (): recordThis = Istina ako je recordThis: program + = p.text program + = '\ n'

Evo ga! Rođen je mrežni strugač.

Povećavanje struganja

Postoje dvije staze za kretanje naprijed.

Jedan od načina za istraživanje mrežnog strugotine je korištenje već izgrađenih alata. Web strugač (veliko ime!) ima 200.000 korisnika i jednostavan je za upotrebu. Također, Središte za razvrstavanje korisnicima omogućuje izvoz izrezanih podataka u Excel i Google tablice.

Uz to, Web Scraper nudi a Chrome dodatak što pomaže vizualizirati kako se gradi web stranica. Najbolje od svega, ako je suditi po imenu, jest OctoParse, moćan strugač s intuitivnim sučeljem.

Konačno, sad kad znate pozadinu struganja web-a, podići svoj vlastiti mali web-strugač kako biste to mogli puzati i trčati Kako izraditi osnovni web pretraživač za povlačenje informacija s web mjestaJeste li ikada željeli zabilježiti podatke s web stranice? Evo kako napisati alat za indeksiranje kako biste se kretali po web mjestu i izdvojili ono što vam treba. Čitaj više samo po sebi je zabavno nastojanje.

Tom je softverski inženjer s Floride (dovikiva Florida Manu) sa strašću za pisanjem, fakultetskim nogometom (idite Gators!), CrossFit i Oxford.