close

Tractor pe şenile

Salt la navigare Salt la căutare

Un crawler (numit și web crawler , spider sau robot ) este un software care analizează conținutul unei rețele (sau al unei baze de date ) într-un mod metodic și automat, de obicei în numele unui motor de căutare . Concret, un crawler este un tip de bot (program sau script care automatizează operațiuni), care achiziționează de obicei o copie text a tuturor documentelor prezente în una sau mai multe pagini web, creând un index care să le permită, ulterior, să fie căutate și vizualizate. .

O utilizare extrem de comună a crawlerelor este făcută pe web ; se bazează pe o listă de URL -uri de vizitat furnizată de motorul de căutare (care, inițial, se bazează la rândul său pe adresele sugerate de utilizatori sau pe o listă prealcătuită de către programatori înșiși). Când analizează o adresă URL, identifică toate hyperlinkurile din document și le adaugă la lista de adrese URL de vizitat. Procesul poate fi încheiat manual sau după ce au fost urmate un anumit număr de conexiuni.

În plus, crawlerele active pe Internet au dreptul de a fi adresate prin ceea ce este indicat în fișierul „ robots.txt ” plasat în rădăcina site-ului. În acest fișier, puteți indica ce pagini nu trebuie analizate. Crawler-ul are dreptul de a urma sfaturile, dar nu și obligația.

Numele păianjenilor principalelor motoare de căutare, actualizate la 21 februarie 2008
Tractor pe şenile Motor de căutare
Googlebot Google
Rapid Rapid - Alltheweb
Hum Inktomi - Yahoo!
Scuter AltaVista
Mercator AltaVista
Întreabă-l pe Jeeves Întreabă-l pe Jeeves
agent Teoma Theoma
Ia arhivator Alexa - Arhiva Internet
Yahoo! Hum Yahoo
Romilda Facebook
DuckDuckBot DuckDuckGo

Exemple de crawler web

Următoarea este o listă de arhitecturi de crawler publice de uz general:

  • Bucean (Eichmann, 1994) a fost primul crawler public. Se bazează pe două programe: primul, " spider" reține cererea într-o bază de date relațională, iar al doilea " ", este un mitebrowser www ASCII care descarcă pagini de pe web.
  • WebCrawler (Pinkerton, 1994) a fost folosit pentru a construi primul index de publicitate textuală al unei ramuri a web-ului. S-a bazat pe lib-WWW pentru descărcarea paginilor și un alt program pentru analizarea și sortarea URL-urilor pentru explorare prin metoda grafică de tip breadth-first. Include, de asemenea, un crawler în timp real care urmărește linkuri bazate pe similarități de ancorare de text cu interogarea condiționată.
  • TennSpider (McBryan, 1994) a fost un crawler folosit pentru a construi un index simplu de titluri și URL-uri ale documentelor. Indexul poate fi căutat folosind comanda grep Unix .
  • Google Crawler (Brin and Page, 1998) este descris în detaliu, dar referința este doar la o versiune anterioară a acelei arhitecturi, care se bazează pe C ++ și Python. Crawler-ul a fost integrat în procesul de indexare, deoarece selectarea textului a fost făcută pentru a indexa complet textul și, de asemenea, pentru a extrage URL-urile. Un server de adrese URL trimite liste de adrese URL pentru a fi preluate de diferite procese de accesare cu crawlere. În timpul analizării , adresele URL găsite sunt trimise la un server URL care verifică dacă adresa URL a fost văzută anterior. Dacă nu, adresa URL este adăugată la interogarea serverului URL.
  • VnzOwna (da Silva și colab. , 1999) utilizat ca programator central și serie de colectoare distribuite. Colecționarii analizează paginile web descărcate și trimit adresele URL descoperite către programator, care atribuie rândul colectorilor. Planificatorul întărește căutarea sortată pe lățime cu o politică neordonată pentru a evita supraîncărcarea serverelor web. Crawler-ul este scris în Perl .
  • Mercator (Heydon și Najork, 1999; Najork și Heydon, 2001) este un crawler web modular distribuit scris în Java . Modularitatea sa rezultă din utilizarea unor „module de protocol” și „șabloane de proces” interschimbabile. Modulele de protocol sunt corelate pentru a achiziționa pagini web (ex: HTTP), iar modulele de proces sunt corelate cu paginile web de procesare. Formularele standard pot fi folosite pentru a indexa textul paginilor sau pentru a colecta statistici de pe web.
  • WebFountain (Edwards et al. , 2001) este un crawler asemănător Mercator, dar scris în C++ . Particularitatea sa constă în „mașina de control” care coordonează o serie de „mașini-furnici”. După o descărcare repetitivă a paginilor, se calculează un factor de schimbare pentru fiecare pagină și trebuie utilizată o metodă de programare neliniară pentru a rezolva sistemul de ecuații pentru a maximiza actualizarea. Autorii recomandă utilizarea acestei ordine de accesare cu crawlere în primele părți și apoi schimbarea ordinii uniforme în care toate paginile au fost vizitate cu aceeași frecvență.
  • PolyBot [Shkapenyuk și Suel, 2002] este un crawler scris în C ++ și Python , constând dintr-un manager, unul sau mai multe descărcatoare și unul sau mai mulți detectoare DNS. Adresele URL colectate sunt adăugate pe disc și procesate ulterior pentru a le căuta în modul lot. Regulamentul ia în considerare atât domeniile de nivel al treilea, cât și cele de al doilea nivel (de exemplu, nivelul al treilea: www.aaa.com, www2.aaa.com) deoarece domeniile de nivelul trei sunt de obicei găzduite de același server web.
  • WebRACE (Zeinalipour-Yazti și Dikaiakos, 2002) este un modul de crawling și cache dezvoltat în Java și utilizat ca parte a unui sistem mai generic numit eRACE. Caracteristica principală care iese în evidență în Webrace este că, în timp ce mulți crawler-uri încep să caute cu un set de semințele URL, WebRACE primește continuu URL-uri noi din formular.
  • Ubicrawler (Boldi et al. , 2004) este un crawler scris în Java. Constă dintr-un număr de „agenți” identici, iar funcția de atribuire este calculată folosind hashingul numelui de gazdă. Nu există suprapunere, aceasta înseamnă că nicio pagină nu este indexată de două ori, până când un agent crawler se blochează; atinge o scalabilitate ridicată și este tolerant la eșecuri.
  • FAST Crawler (Risvik și Michelsen, 2002) este un crawler folosit de Fast Search & Transfer .
  • Labrador , un crawler privat care colaborează cu proiectul Open Source numit Terrier Search Engine .
  • Spinn3r , este un crawler folosit pentru a construi sufletul Tailrank.com. Spinn3r se bazează pe Java și cea mai mare parte a arhitecturii este Open Source.
  • HotCrawler , este scris în C și PHP .

Crawler cu sursă deschisă

  • DataparkSearch este un crawler și un motor de căutare distribuit sub licența publică generală GNU .
  • Ebot este un crawler scalabil și distribuit scris în Erlang și distribuit sub Licența Publică Generală GNU .
  • Wget este un crawler de linie de comandă scris în C și distribuit sub Licența Publică Generală GNU . Este folosit de obicei pentru site-uri oglindă și FTP .
  • Heritrix este cel mai înalt crawler de arhivă web, conceput pentru a arhiva capturi de ecran periodice ale unei mari porțiuni a web. A fost scris în Java .
  • Htdig include un crawler web în motorul său de indexare.
  • HTTrack folosește un crawler web pentru a crea o replică a unui site web pentru consultare off-line. A fost scris în C și distribuit sub licența GNU GPL .
  • JSpider este un web spider foarte personalizabil, distribuit sub licența GNU GPL.
  • Methabot este un crawler web de linie de comandă optimizat pentru viteză, scris în C și distribuit sub licența ISC . Include un sistem de configurare, un modul de sistem și suport pentru accesarea cu crawlere a țintelor prin sistemul de fișiere local , HTTP sau FTP.
  • Nutch este un crawler scris în Java sub licență Apache. Poate fi folosit împreună cu indexul textual creat cu Lucene .
  • WebVac este un crawler utilizat de Proiectul Stanford WebBase .
  • WebSPHINX (Miller și Bharat, 1998) este compus dintr-o bibliotecă Java care implementează interogarea multiplă a paginilor web și analiza HTML, o interfață grafică de utilizator pentru a seta adresele de pornire pentru a extrage datele descărcate și pentru a implementa un text de bază pentru motor de căutare.
  • WIRE - Web Information Retrieval Environment (Baeza-Yates și Castillo, 2002) este un crawler web scris în C++ și distribuit sub licență GPL, care include mai multe linii directoare pentru catalogarea paginilor web descărcate și un modul pentru generarea de statistici și rapoarte pe paginile descărcate. , folosit pentru caracterizarea web.
  • LWP :: RobotUA (Langheinrich, 2004) este o clasă Perl distribuită sub licență Perl5.
  • Web Crawler este un crawler web open source pentru .NET scris în C # .
  • Sherlock Holmes colectează și indexează date textuale (fișiere text, pagini web etc.), atât local, cât și în rețea. Holmes este sponsorizat și utilizat comercial de portalul web ceh Centrum. este folosit și de site-ul Onet.pl.
  • YaCy este un motor de căutare distribuit gratuit, construit pe principiile rețelelor p2p (licențiat conform GPL).
  • Ruya este o sursă deschisă de înaltă performanță, bazată pe căutarea pe lățimea întâi, crawler la nivel de intrare. Este folosit pentru a gestiona site-uri web în engleză și japoneză în cel mai bun mod posibil. Este licențiat sub GPL și scris în întregime în limbajul Python .
  • Universal Information Crawler este un crawler web rapid de utilizat. Salvați și analizați datele.
  • Agent Kernel este un cadru Java pentru planificarea, procesarea și stocarea datelor în timpul accesării cu crawlere.
  • Squzer , un crawler web open-source, extensibil și multifuncțional, scris în Python.
  • Arachnode.NET este un crawler web promiscuu cu sursă deschisă pentru descărcarea, indexarea și salvarea conținutului de pe Internet, inclusiv e-mailuri, fișiere, hyperlinkuri, imagini și pagini web. Arachnode.net este scris în C # folosind SQL Server 2005 și este licențiat sub GPL.
  • BBragnet este un crawler web open source (pentru servere Linux ) scris în PHP

Critici

Termenul Web Crawler este folosit și pentru a indica browsere offline controversate , cum ar fi: PageNest (fost WebStripper ), MSIECrawler , Offline Explorer etc. Aceste programe sunt concepute pentru a descărca conținutul unui întreg site web pe hard disk -ul computerului utilizatorului. De exemplu, Memory Alpha interzice utilizarea acestora deoarece accesează site-ul în mod agresiv, încetinind drastic utilizarea site-ului de către alți utilizatori [1] iar infractorii riscă să fie blocați [2] .

Note

  1. ^ Memory Alpha: Descărcare baze de date , pe memory-alpha.org . Consultat la 28 decembrie 2010 .
  2. ^ Vezi fișierul robots.txt al memoriei Alpha

Articole înrudite

Alte proiecte

Link- uri externe

  • PolyBot , pe cis.poly.edu . Preluat la 5 aprilie 2008 (arhivat din original la 30 aprilie 2008) .
  • WebRACE ,pe grid.ucy.ac.cy. Preluat la 5 aprilie 2008 (arhivat din original pe 28 decembrie 2007) .
  • Ubicrawler , pe law.dsi.unimi.it . Preluat la 5 aprilie 2008 (arhivat din original pe 10 aprilie 2008) .
  • Labrador ,pe ir.dcs.gla.ac.uk. Preluat la 5 aprilie 2008 (arhivat din original la 31 decembrie 2007) .
  • Spinn3r , pe spinn3r.com . Arhivat din original pe 13 martie 2018 .
  • Htdig , pe htdig.org . Preluat la 5 aprilie 2008 (arhivat din original pe 8 aprilie 2008) .