Pogledajte određenu poruku
Staro 17. 04. 2012.   #14
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

evo cisto kao ilustracija o cemu pricam, glup primer, zamislite da negde u sred strane ima ovakvih par linkova:
HTML kôd:
<a href="foo">Foo</a>
<a href="bar">Bar</a>
<a href="neki_dinamicki_generisani_link_do_cenovnika">Prices for neki proizvod</a>
Kako preko DOM based parsera dohvatiti link cenovnika? Ili ici redom kroz sve linkove, pa traziti koji ima text koji pocinje sa Prices, sto je ovde ok, ali linkova moze biti milion, ili jos gore resenje traziti treci po redu link (pa onda to pukne cim se malo promeni dizajn). Regexp-om se to dohvata laganica. Sto je jos bitnije, dizajner moze da menja dizajn strane koliko voli (sto ecommerce sajtovi rade cesto zbog sezonskih promocija i sl), dok god je text linka nepromenjen, moj spajder radi kao sat

Ovo je jako uproscena situacija, u realnom poslu treba ispratiti gomilu linkova na strani, pronaci next page linkove, handlovati cesto lose napisan kod gde se u sred strane pojavljuju php greske ili linkovi na sledece strane rezultata koje zapravo ne postoje, menja se dizajn strane od proizvoda do proizvoda, programeri namerno prave fore da sprece parsiranje i sl. Not for the faint-hearted...

EDIT: Da me ne razume neko pogresno, nemam ja nista protiv DOM parsera, za "normalne" primene je to genijalno elegantno resenje ili ako je iz nekog razloga bitna struktura stranice, ali za komercijalne spajdere koji najcesce rade polu-legalne stvare, da ne kazem kradu sadrzaj, akademske prica o "ispravnom" nacinu parsiranja html-a su u najmanju ruku smesne...
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 17. 04. 2012. u 02:36.
ivanhoe je offline   Odgovorite uz citat