Ahoj, mám takovou situaci, kdy parsuju různý obsah z webu a ukládám si ho do databáze. Problém je, že potřebuji kontrolovat jestli jsou data u mě aktuální oproti těm na netu, pokud ne, tak je updatovat. Nápad jsem měl takový, že parser otevře stránku, vyzobe data která chci, ty se hned sypou do objektů modelu (django) a vkládají do seznamu, spočítal bych si hash tohoto seznamu (built-in hash()), hash si někam poznačil a uložil data. Při dalším checku (bude se opakovat co 2 hodiny) se stránka znovu zparsuje, znovu se data nacpu do seznamu a spočítá se hash, pokud bude jiný, updatuje se, pokud ne, data se zahodí a jedeme dál. Což asi moc fungovat nebude, viz dále...
Moc se mi nelíbí, že při každém průchodu se bude znovu parsovat, ale není to naštěstí nijak složité nebo náročné. Parsovat bych možná ani nemusel, mohl bych spočítat hash komplet celé stránky, ale myslím si, že se tam spíš změní něco jiného, než to po čem jdu a to by dělalo bordel a další zbytečnou práci s updatováním dat, která se ani nemusela změnit, proto bych raději hlídal checksum rovnou dat po kterých jdu. Dále, je na toto vhodná interní hash() funkce? Nejsem si v tomto úplně jistý, nic takového jsem ještě neřešil. Co jsem tak zkoušel, tak hash dvou instancí stejné třídy je vždycky jiný, nevím podle čeho přesně se ten hash počítá, ale já asi budu muset udělat hash z kompletního "textu" který ze stránky vytáhnu, což se mi trochu komplikuje, protože na jednu parsovanou stránku vytáhnu třeba 15 různých "objektů" které se pak uloží jako záznamy v databázi, tak nevím jestli je dobré z nich nasekat jeden velký string... Napadá vás jiný/lepší způsob? Děkuji mnohokrát za rady. -- S pozdravem Martin Stiborský Jabber: st...@njs.netlab.cz _______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python