Autor Zpráva
Prochy
Profil
Zdravím,

potřeboval bych z jedné stránky jednou za týden stáhnout nějaké data, které pote nahraju na moje stránky. Abych to nemusel dělat manuálně, tak jsem použil regulární výrazy, abych ty data rozparsoval a nahrál do db. Chci se zeptat, jak mužů nejlíp ověřit, že se struktura html, ze které jsem původně vycházel, nezměnila?

Stránka teď vypadá následovně:
is.fotbal.cz/zapasy/zapis-o-utkani-report.aspx?zapas=0f7025ee-279f-4aaa-b003-124e07ab0e2c&zapis=1&noprint=1&btnprint=0&.htm

Napadlo mě, že bych si tohle html například uložil a pokaždé před zpracováním dat bych stáhnul aktuální html z uvedeneho odkazu a porovnal. Počítám s tím, že když budou mít novější fotbalové zápisy jiný tvar html, tak i tento html této stránky bude jiný a tím zjistím tu změnu a bude nutné upravit kód. Nebo to je možné udělat jinak, líp?

Děkuji
Filip
Keeehi
Profil
Prochy:
Napadlo mě, že bych si tohle html například uložil a pokaždé před zpracováním dat bych stáhnul aktuální html z uvedeneho odkazu a porovnal.
Myšlenka pěkná, ovšem jak to chceš porovnávat? Vždyť data se budou měnit. Úplně stejné to tedy nikdy nebude.
blaaablaaa
Profil
Prochy:
Stahni, zkus z toho vytahnout data a pokud se ti to nepovede, je jasne, ze se neco zmenilo. Nebo jeste lepe se s nima domluv, zda nemaji nejaky strukturovany vystup.
Prochy
Profil
Keeehi:
Nevím, jestli jsem se správně vyjádřil. Např. nyní si stáhnu htm soubor z odkazu:
is.fotbal.cz/zapasy/zapis-o-utkani-report.aspx?zapas=0f7025ee-279f-4aaa-b003-124e07ab0e2c&zapis=1&noprint=1&btnprint=0&.htm
Uložím si ho na server a před každým parsováním si stáhnu aktuální verzi z výše uvedeného odkazu, porovnám ho s tím původním uloženým, který mám na serveru. Data budou vždy stejná (zápis už je uzavřený, nemělo by se tam nic měnit). Tzn. že pokud se to nebude rovnat, tak to znamená, že muselo dojít ke změně v html kódu.
Nebo mi něco uniká?


blaaablaaa:
Na to už jsem se ptal, bohužel nic takového nemají. Ta varianta mě také napadla, ale říkal jsem si, kdyby náhodou neměli nějaký pole někde vyplněný, tak abych to chybně nevyhodnotil, což bude samozřejmě chyba na mé straně. Ale asi to bude lepší varianta než ta moje původní.
Keeehi
Profil
Prochy:
Data budou vždy stejná (zápis už je uzavřený, nemělo by se tam nic měnit).
Pokud se nebude nic měnit, tak proč to stahuješ každý týden znovu a znovu?
Tomášeek
Profil *
Keeehi:
Stáhne si toto stejné pro porovnání, a pokud bude aktuální verze sedět s tou, která je v DB, stáhne a zpracuje ostatní zápasy. Myšlenka mi přijde jasná.

Prochy:
Osobně bych se jako blaablaa na ten mezikrok vyprdnul. Stáhni si sadu aktuálních zápasů a zkus je zpracovat. Pokud se podaří, OK, pokud ne, pošli si mail (nebo jakoukoliv jinou akci), který tě upozorní, že to máš zkontrolovat. Pokud některá pole mohou být prázdná, mysli na to už v reguláru.

Protože, pokud zkontroluješ vstupní HTML, script vyhodnotí jako "OK, je stejné". Pro tebe to je známka, že se zpracování dat u dalších zápasů podaří a nezkontroluješ je. Naopak, pokud stejnost HTML kontrolovat nebudeš, nějaké pole se ti neuloží > automaticky upozornění > víš o tom hned. Kontrola HTML tak bude moci jen odvádět pozornost/skrývat problematická místa.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: