|
Politica de confidentialitate |
|
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
Robotii Web | ||||||
|
||||||
1. Prezentare generala m2o14oo Trebuie facuta o distinctie clara intre robotii Web si navigatoarele Web care sunt aplicatii actionate de om sau intre robotii Web si agentii Web care se bucura si de alte caracteristici, precum inteligenta, mobilitatea ori autonomia. Activitatea unui robot Web este cea de a realiza o conexiune HTTP (HyperText Transfer Protocol) la un server Web continind un set de pagini, pornind de la un identificator uniform de resurse (URI), de a extrage informatiile dintr-un document HTML si din toate documentele desemnate de legaturile lui. 2. Utilizari analiza statistica mentinere Robotii pot verifica si structura documentelor HTML, semnalind erorile de design si de stil ale acestora. oglindire Pentru Web, oglindirea poate fi realizata de un robot, care trebuie sa aiba grija de rescrierea referintelor la alte documente, la pastrarea integritatii hipertextului si la actualizarea regulata a paginilor WWW. Oglindirea poate fi evitata, folosind in mod inteligent memoria cache a serverelor proxy (intermediare), care ofera posibilitati de actualizare selectiva si de organizare a resurselor. descoperirea resurselor Astfel, fiecare motor de cautare, continind baze de date privind localizarea si tipul de informatii dorite de utilizatori, apeleaza la serviciul robotilor Web pentru descoperirea resurselor Internet. Un avantaj suplimentar este cel dat de monitorizarea modificarilor survenite in cadrul paginilor Web (servicii "Mind-It" sau "What's new"). utilizari combinate 3. Pericole si costuri de utilizare ale robotilor Un alt aspect care trebuie luat in consideratie este timpul de actualizare a bazelor de date ale motoarelor de cautare folosind pentru descoperirea resurselor robotii Web. Robotii de cautare a informatiilor vor trebui sa decida care informatii sunt importante a fi transmise programelor de indexare. Un alt pericol deriva din exploatarea necontrolata a robotilor Web de catre utilizatorii finali care pot folosi optiuni inadecvate sau pot rula mai multe instante de program, conducind la abuzuri nedorite. Robotii Web, in special cei netestati indeajuns, pot fi ineficienti sau pot poseda vicii de arhitectura si astfel sa dauneze traficului de informatii pe Internet, mai ales daca sunt folositi de persoane neavizate ori de neprofesionisti. Implementari eronate pot determina robotii sa intre in arii aproape infinite denumite gauri negre (atunci cind de exemplu un document are o legatura care se refera la el insusi, iar programul nu detecteaza acest aspect). De asemeni, robotii nu trebuie sa acceseze tipuri de date fara relevanta, avind dimensiuni considerabile (e.g. arhive, fisiere executabile, fisiere multimedia etc.). 4. Tipuri de roboti Web roboti academici - sunt acei roboti disponibili in medii academice, avind ca scop anumite activitati de colectare a datelor dintr-o universitate sau de mentinere a integritatii legaturilor dintr-un site academic. roboti de proiectare - poseda capabilitati de proiectare si de asistare in activitatile de design a paginilor Web sau de proiectare a altor tipuri de roboti. roboti conversationali - ofera un partener virtual de discutii in Internet, fiind de obicei integrati serviciilor de teleconferinte pe Web. Ca exemplu, putem mentiona Eliza. roboti de comert - sunt roboti inlesnind activitatile de comert electronic, licitatii pe Web, bursa etc. roboti distractivi - ofera diverse facilitati de amuzament (jocuri, predictii, recomandari de adrese interesante etc.) pentru utilizatorii care parcurg paginile Web. roboti guvernamentali - sunt acei roboti vizind servere continind informatii de interes guvernamental sau diplomatic ori cu caracter secret. roboti inteligenti - manipuleaza informatii, posedind inteligenta artificiala, fiind utilizati pentru explorarea inteligenta a resurselor Web (e.g. Harvest sau W3QS). roboti de stiri - monitorizeaza grupurile de stiri de pe Internet, modificarile din cadrul site-urilor mass-media (ziare electronice, posturi radio sau de televiziune prezente pe Web etc.), schimbarile de adrese si altele. roboti de cautare - sunt robotii utilizati de motoarele de cautare (ca de exemplu WebCrawler). roboti de actualizare - se folosesc pentru actualizarea automata a hiperlegaturilor si pentru detectia schimbarii adreselor Web. 5. Catalogarea informatiilor utilizind roboti Procesul de regasire a informatiilor se bazeaza pe faptul ca din intreg volumul de date numai o fractiune reprezinta documente relevante pentru utilizator. Cea mai populara tehnica este cea a indexarii documentelor pe baza cuvintelor cheie furnizate fie explicit de creatorul acestor documente, fie in urma unei catalogari automate realizate de un robot. Cautarea se realizeaza folosind algoritmi de parcurgere locala de tip DFS sau BFS sau prin procesarea intr-o ordine inteligenta a legaturilor spre alte documente. Intrebarile care se pun sunt: Cit de relevante sunt activitatile de indexare si de sumarizare automate? Documentelor HTML le pot fi atasate anumite atribute care sa le descrie continutul? Raspunsul la ultima intrebare este dat de urmatoarele aspecte: Standardul HTML permite autorilor de pagini WWW sa enumere cuvintele cheie care sa descrie cel mai adecvat continutul lor informational, prin folosirea in antet a tag-ului META. Iata un exemplu: <meta name="description" -- descriere succinta - content="Manipularea informatiilor multimedia"> O metoda complementara este utilizarea de tag-uri ascunse care sa fie exploatate de diversi roboti (de pilda tag-urile speciale ale programului Teleport). Descrierea inteligenta a resurselor poate fi realizata cel mai bine cu RDF (Resource Description Framework). Deja exista tehnici de generare automata a metadatelor RDF pentru descoperirea resurselor Web, pornind de la titluri, cuvinte cheie, descrieri, data crearii, numarul total de cuvinte dintr-un document etc. Pot fi folosite diverse alte metode (euristici): explorare structurala, utilizarea retelelor neuronale sau a algoritmilor genetici etc. Pentru excluderea robotilor din zone Web lipsite de relevanta, continind date temporare ori private, s-a adoptat un standard pentru excluderea robotilor. Acest standard se bazeaza pe accesarea unui fisier text robots.txt (stocat pe serverul Web) de catre un robot de explorare, fisierul specificind ce parti vor fi evitate de la parcurgerea automata (pentru evitarea gaurilor negre sau din alte ratiuni). Un exemplu de astfel de fisier este cel de mai jos: #/robots.txt pentru https://www.infoiasi.ro Disallow: /busaco/work/ # spatiu privat In vederea evitarii indexarii continutului unei pagini Web se poate scrie in antetul ei: <meta name="robots" content="noindex"> In activitatea de catalogare a informatiilor, de multe ori intervine ierarhizarea datelor in functie de subiectul pe care-l trateaza, aceasta clasificare ducind la aparitia serviciilor director (de genul GENVL). Clasificarea dupa subiect este similara retelei lingvistice WordNet. Un robot de indexare a informatiilor poate sa se confrunte cu diverse probleme precum mutarea URI-urilor, cautarea intr-o oglindire si nu intr-o locatie originala, duplicarea legaturilor si altele. Un utilizator poate apela la un serviciu de inregistrare automata la o suita de motoare de cautare, de obicei gratuit, ca de exemplu AddMe!. 6. O formalizare a activitatii de cautare pe Web Desigur, si numarul de cereri din partea utilizatorilor a crescut foarte mult, de la 1500 de cereri pe zi in martie si aprilie 1994, pina la 20 de milioane de cereri pe zi la sfirsitul anului 1997 (conform statisticilor AltaVista, unul dintre cele mai cunoscute servicii avansate de cautare). Pentru a obtine rezultate optime in activitatea de cautare a informatiilor, trebuiesc gasite diverse formalizari utile apoi in fazele de proiectare a robotilor si motoarelor. In general, putem considera o structura Web (netemporala) ca o functie partiala de la multimea URI-urilor la secvente finite de octeti. Intuitiv, fiecare structura Web desemnata de un identificator din multimea URI corespunde unui obiect (un document HTML, un fisier text, o imagine etc.). Functia este partiala deoarece anumitor URI-urilor nu le corespunde nici o resursa. Pentru intregul spatiu Web vom considera structura denumita WWW. In realitate structura WWW variaza in timp, fiindca URI-urile pot sa se modifice (la un moment de timp t, vom avea starea Web WWWt). Vom presupune ca WWW este consistenta local din punct de vedere temporal, pentru intervalul de timp d, probabilitatea ca din WWWt(url) = seq, t > t' > t + d sa rezulte WWWt' (url) = seq este extrem de ridicata, unde url apartine multimii de URI-uri, iar seq este o secventa de date. Altfel spus, exista un interval de timp suficient de mare astfel incit pentru acel interval structura Web poseda acelasi identificator uniform de resursa. Vom defini un obiect Web ca o pereche (url, seq), unde url este un element din multimea de identificatori URI, iar seq este o secventa de octeti, cu seq = WWW(url). Spatiul Web poate deci fi privit ca o multime numarabila de obiecte Web. Marea problema a motoarelor conventionale de cautare este ca se realizeaza numai indexarea textului si nu a structurii hipertext a documentelor HTML. Achizitia si indexarea automate a informatiilor text duc la o relevanta scazuta a rezultatelor cautate. Pentru indexarea hipertextului, trebuie avut in vedere aspectul dinamic al acestuia, reprezentat de diversele legaturi care trimit catre alte documente. Metodele traditionale folosite pur si simplu "uita" structura hipertext a documentelor, explorind doar continutul liniar, oferind astfel doar informatii textuale despre acel document si nu informatiile structurale, de tip hipertext. Din punct de vedere formal, cautarea se rezuma doar la informatiile date de seq si nu si de a doua componenta (url) a unui obiect Web. Ca exceptie partiala poate fi data asa-numita vizibilitate a unui obiect Web, masurind numarul de documente conectate de acel obiect. Motoare de cautare ca Excite sau Lycos exploateaza aceasta informatie. Problema este ca vizibilitatea nu ofera nimic despre continutul informativ al obiectului in cauza. Putem privi vizibilitatea ca o masura pentru popularitatea unei pagini Web, care nu are nimic de a face cu calitatea denotata de continutul ei intrinsec. 6.1 Hiperinformatia Dat un obiect Web O, adincimea (relativa) a unui alt obiect Web O' este data de numarul minim de legaturi ce pot fi activate (parcurse) pentru accesarea lui O' pornind de la O. Fixind o anumita adincime, putem selecta o vecinatate locala finita a unui obiect Web din spatiul hipertext World Wide Web. Problema este sa stabilim hiperinformatia de o adincime k pentru un obiect O, notind aceasta cu HYPERINFOaki. Informatia totala de adincime k va fi notata cu INFORMATIONaki. Vom considera astfel functiile HYPERINFO, TEXTINFO si INFORMATION de la multimea obiectelor Web la multimea numerelor reale nenegative. Intuitiv, cu cit valoarea unei functii e mai mare, cu atit continutul informational al acelui obiect este mai relevant. Aceste functii vor fi marginite (exista un numar M astfel incit M > INFORMATION(O), pentru orice obiect O). 6.2 Legaturi simple Informatia textuala ca sursa a unei legaturi dintr-un document nu poate fi considerata drept actuala, ci numai potentiala. Pentru utilizator exista un cost pentru a retine acea informatie textuala disponibila dupa parcurgerea legaturii (se pierde un timp de asteptare pentru incarcarea documentului). Astfel, intervine in calcul si adincimea (numarul de legaturi pe care trebuie sa le parcurga utilizatorul pina la accesarea documentului conectat cu documentul de la care a plecat). Contributia informatiei textuale a obiectului B, avind adincimea k, la hiperinformatia obiectului A este data de relatia Fk·TEXTINFO(B), unde 0 < F < 1. Pentru situatia din figura 2., hiperinformatia lui A nu este: TEXTINFO(B1) + TEXTINFO(B2) +...+ TEXTINFO(Bk) ci este furnizata de: Se poate da si o relatie de recursie: INFORMATIONaki(A) = F·INFORMATIONak-1i(B), care furnizeaza tocmai formula enuntata mai sus. 6.3 Legaturi multiple De remarcat ca utilizatorul nu poate parcurge toate legaturile in paralel, ci in maniera secventiala, selectind la un moment dat doar una dintre ele. In cel mai bun caz, utilizatorul va urma cea mai informativa legatura, apoi cea de a doua in ordinea continutului informational si asa mai departe. Astfel, vom ordona legaturile in functie de continutul lor informational, presupunind ca TEXTINFO(B1) > TEXTINFO(B2) >...> TEXTINFO(Bn). Hiperinformatia asadar poate fi calculata prin relatia: F·TEXTINFO(B1) + F2·TEXTINFO(B2) +...+ Fn·TEXTINFO(Bn)
6.4 Cazul general - un exemplu Remarci Exista posibilitatea aparitiei legaturilor duplicate (doua legaturi intr-un obiect Web pointind spre acelasi obiect Web). Solutia este evitarea unor astfel de probleme prin considerarea unei submultimi a multimii tuturor secventelor de selectie a legaturilor. Un alt aspect interesant este cel de considerare a definitiei legaturii intr-un obiect Web. O legatura se numeste activa daca legatura poate fi vizualizata (vizitata) prin accesarea perechii (url, seq) cu ajutorul unui navigator HTML. In cadrul modelului vor trebui considerate numai legaturile active, care pot fi explorate in realitate, corespunzindu-le un URI valid. Pentru procesul de cautare, fiecare tip de legatura va fi tratat in mod corespunzator. Legaturile locale (interne) specificate in documentele HTML prin #specificator vor fi ignorate. Cadrele (frames) vor trebui sa fie expandate, fiind inlocuite de continutul documentelor spre care pointeaza. Alte legaturi (spre imagini de exemplu) vor fi activate automat, desi in prezent este foarte dificil de a exploata continutul informational al documentelor care nu sunt de tip text. 6.5 Testarea In cadrul implementarii postprocesorului au fost luate in consideratie urmatoarele principii: Datele obtinute de motoarele de cautare sunt filtrate astfel incit sa fie prezentate la intrare postprocesorului intr-un format neutru, independent de formatul de iesire furnizat de motorul de cautare. Cererile sunt formulate aleatoriu, independente de domeniu si de tematica. Alegerea paginilor a caror adrese sunt furnizate de motoarele de cautare se realizeaza in mod aleatoriu. Evaluarea cautarilor (pentru un numar de cinci motoare Web) este ilustrata in diagrama de mai jos: Excite HotBot Lycos WebCrawler OpenText M E D I A Tabelul 1. Comparatii intre cautari traditionale si cele bazate pe hiperinformatie Chiar avem nevoie de un alt robot sau adoptam nevoilor noastre unul deja existent? Robotul trebuie identificat usor de administratorul Web si autorul acelui robot trebuie sa fie contactat facil. Robotul va trebui sa fie mai intii testat pe date locale, intr-o retea proprie, inainte de a fi disponibil in Internet. Robotul va fi moderat in ceea ce priveste resursele: prevenirea focului rapid, eliminarea cautarilor redundante si inutile. Robotul se va conforma standardului de excludere a robotilor. Autorul robotului va analiza continuu activitatile robotului propriu. Rezultatele furnizate de robot (diversele statistici sau alte date) vor putea fi facute disponibile spre consultare celor interesati. Majoritatea robotilor Web actuali respecta recomandarile de mai sus. 8. Exemple Structura acestui robot inteligent este data de figura de mai jos: Acest robot este disponibil in mediile Windows. Pentru platformele UNIX, exista o multitudine de roboti similari, dintre care se pot mentiona tkWWW sau RBSE (Respository Based Software Engineering). 8.3 Inktomi - statistici Web 8.3.1 Experimentul libink este o biblioteca de componente pentru extragerea si manipularea datelor hipertext, constind din patru module principale: analizorul HTML este un scaner lexical inspirat din flex, configurabil si rapid; analizorul URI este un analizor al identificatorilor uniformi de resurse (URI); translatorul DNS converteste adresele simbolice ale serviciului numelor de domenii (DNS) in adrese IP numerice, utilizind o memorie cache suplimentara; serviciile generale pentru tabele hash sunt folosite in cadrul procesului de prelucrare a datelor, implementind tabele hash distribuite. style este un program standard UNIX raportind diverse proprietati statistice (lungimea medie a unei fraze, numarul mediu de propozitii dintr-o fraza complexa, numarul total de cuvinte etc.) utile analizei documentelor din perspectiva limbajului natural. In cadrul experimentului au fost considerate doar documente scrise in limba engleza. weblint este un analizator structural de marcaje pentru documentele HTML, inspirat din utilitarul UNIX lint. 8.3.2 Rezultatele lungimea documentelor media numar de marcatori/lungimea paginii utilizarea marcatorilor utilizarea atributelor utilizarea marcatorilor specifici unor navigatoare particulare utilizarea portului de conectare protocoalele in cadrul URI-urilor tipurile fisierelor specificate in componenta URI-urilor erorile de sintaxa Iata citeva dintre rezultatele obtinute. Lungimea documentelor Utilizarea marcatorilor Protocoalele in cadrul URI-urilor 0,7% arhive GNU ZIP (.gz .gzip .tar .tgz) Programul weblint a gasit aproximativ 92000 (0,7%) de documente continind erori sintactice. Figura urmatoare furnizeaza primele 10 cele mai comune erori. Figura 11. Cele mai frecvente 10 erori detectate Legenda: html-outer - nu exista tag-urile <html>...</html> no-head - lipseste elementul <head> head-element - tag-urile specifice antetului paginii Web (<title>, <link>, <base> sau <base>) apar in afara acestuia no-body - lipseste elementul <body> must-follow - lipsesc marcatorii obligatorii in cadrul altui tag unclosed-element - tag-urile de sfirsit lipsesc netscape-markup - marcaje specifice Netscape (nu trebuie considerata neaparat o eroare, ci mai mult o abatere de la standardul HTML definit de Consortiul Web) empty-container - elemente vide, fara continut mis-match - tag-uri nepotrivite (de exemplu <h2>...</h3>) heading-order - ordine inadecvata a elementelor de tip Hx 8.4 LiveAgent Pro - pentru realizarea oglindirilor Web Dezvoltat de AgentSoft, robotul LiveAgent Pro este destinat efectuarii automate a oglindirilor unui server Web la alta locatie. Alte facilitati ale aplicatiei sunt completarea automata a formularelor electronice, posibilitatea de programare prin intermediul scripturilor sau utilizarea robotului in Intranet. 9. Referinte bibliografice |
||||||
|
||||||
|
||||||
Copyright© 2005 - 2024 | Trimite document | Harta site | Adauga in favorite |
|