![]() XHost |
Gazduire site-uri web nelimitata ca spatiu si trafic lunar la doar 15 eur / an. Inregistrare domenii .ro .com .net .org .info .biz .com.ro .org.ro la preturi preferentiale. Pentru oferta detaliata accesati site-ul BluePink |
Deviza echipei:
Design CTT pentru blogspot.com
Swing GUI pentru cautarea de conversatii
Interfata web pentru highligh de text
Interfata blogger modelata cu arbori CTT
Analiza comunitatii HI5 si afisarea grafica...
Web 2.0...3.0... spre ce ne indreptam...?
XSLT - Ce...? De ce...? Cum...?
Sfaturi pentru integrarea JSON cu AJAX
Web Semantic - concepte de baza
CSS ... sau big bang-ul din web!
AJAX, echipa de fotbal si tehnologie web!
Top 10 interfete interactive
Interfete interactive
2009 Information Technologies impacts
What is design?
Prezentare Google in Poli.html
De ce nu apare situl pe trafic.ro?
What is GeoJson ???
A "Sexy++" interface ... or not
python + xml + hi5 - combinatia ideala...
Open Social-un trend in crestere pentru...
Raspunsuri la mesajele venite pe adresa...
Am ales pentru rezolvarea temei hi5 si python. Alegerea a fost, dupa cum s-a dovedit mai tarziu una cum nu se poate mai nefericita dupa cum se observa si din observatiile mele anterioare.
Cerintele temei au fost foarte simple. Tot ce se cerea era pornirea de pe o pagina home a unui utilizator de hi5 si parcurgerea relatiilor lui, ... apoi parcurgerea relatiilor relatiilor lui ... si tot asa pana la o anumita adancime configurabila in program. Informatiile retrase de pe urma parcurgerii se scriau intr-un fisier xml cu un anumit format. In principiu se cereau url-ul paginii "relatiei", adancimea de la nodul de pornire, precum si parintele direct in relatie.
Din exces de zel am realizat doua implementari ale temei, una mai proasta ca alta.
Prima este un DFS care se executa pornind de la url-ul dat si retrage "toate" relatiile pana la o anumita adancime. Toata functionalitatea programului se restrange la o functie recursiva care se propaga din url in url si scrie rezultatele. Singura problema la abordarea asta e ca adancimea nu se calculeaza corect. Avand in vedere ca relatiile stabilesc intre ele o topologie de graf, si nu de arbore adancimea se calculeaza de la parintele direct in dfs, deci cam nasol.
A doua este ... evident un BFS, scris tot cu picioarele. Implementarea - clasica : o coada in care se indeasa url-uri si pe care se cicleaza pana se goleste sau se ajunge la o adancime mai mare decat cea ceruta. O alta coada tine adancimile relatiilor (deja incepe sa para ciudat). Ambele implementari au un set cu scopul de a evita vizitarea aceluiasi url de doua ori.
Partea cea mai interesanta este ca ruland cele doua scripturi python cu un url aleator de pe hi5 vor returna un xml cu un numar diferit de tag-uri, asa ca ... nu pot decat sa sper ca macar unul dintre ele este corect.
Copyright Dragos Tarcatu, 1 Decembrie 2008