Autor Zpráva
PavelKend
Profil *
Zdravím,
nejsem programátor, ale zajímalo by mne, pomocí jaké technologie, případně jakým postupem získává server Tescoviny.cz všechny data o produktech z internetového obchodu iTesco.cz?

Psali o tom zde: http://www.podnikatel.cz/clanky/vytvari-tesco-e-shop-falesne-slevy-na-zbozi-indexovaci-robot-rika-ano/

A ještě jedna otázka - majitel serveru se zde vyjadřuje: "Tesco samotné neposkytuje žádný oficiální export dat. Nemám tedy k dispozici žádné jiné informace, než jakýkoliv běžný návštěvník e-shopu nebo například Googlebot" - zajímalo by mne také, jestli je takové získávání dat plně legální?

Díky.
Joker
Profil
PavelKend:
Nejspíš to dělá tak, že nějaký robot (program) prochází stránky těch produktů a z nich si ukládá údaje.

zajímalo by mne také, jestli je takové získávání dat plně legální?
Legální asi ano, ale provozovateli daného serveru se to z různých důvodů (například zatěžování serveru) nemusí líbit a může takového robota blokovat.
(před lety třeba tohle postihlo projekt na měření zpoždění vlaků)
Keeehi
Profil
PavelKend:
pomocí jaké technologie, případně jakým postupem získává server Tescoviny.cz
Jejich postup neznám, ale není problém si vytvořit program/script který postahuje zdrojové kódy všech stránek produktů eshopu. Tyto stránky mají jednotnou strukturu. Takže vědí, že třeba mezi <span class="linePrice"> a prvním následujícím </span> je cena. Podle takových pravidel se dají sestavit regulární výrazy podle kterých se pak najdou požadované informace. Když takto najdou všechny potřebné informace, někam si je uloží (nejlépe do databáze). Takhle to udělají u všech produktů. V databázi jím tím vzniknou záznamy s aktuální cenou všech položek. Pokud to dělají každý den, mohou pak sledovat vývoj ceny a spoustu dalších věcí.

jestli je takové získávání dat plně legální?
Nemusí. Mohli by být obviněni třeba z neoprávněného vytěžování databáze. Legálnost však záleží na posouzení soudu.
ShiraNai7
Profil
PavelKend:
zajímalo by mne také, jestli je takové získávání dat plně legální?
Je to nelegální pokud ty data pak veřejně poskytuješ nebo prodáváš (víc asi v autorském zákonu).

případně jakým postupem získává server Tescoviny.cz všechny data o produktech z internetového obchodu iTesco.cz?
Napsat bota, který proleze celý eshop a vysosá data přímo z HTML není těžké udělat.
Kcko
Profil
ShiraNai7:
Je i není. Psal jsem bota, který musel projít cca 300 kategorií a cca 15 tis. produktů (legální svolení), skript jel několik hodin, takže jsme se na to vybodli. I když řešil jsem to pouze přes surové PHP, možná se to dá jinak, jak vlastně?
Keeehi
Profil
Kcko:
možná se to dá jinak, jak vlastně?
Vždy je to stejné schéma: Načíst html - najít potřebné údaje - uložit nalezené údaje. Pak už jen záleží na implementaci.
Zrychlit se třeba mohlo použitím c/c++ místo PHP; napsat bota tak, aby ho bylo možno spustit vícekrát vedle sebe (nebo aby si sám vytvořil více procesů) a mohl pracovat paralelně. Další parametry ovlivňující rychlost, které se nedají tak lehce změnit: výkon počítače na kterém běží bot, rychlost odpovědi servru, rychlost připojení k internetu, velikost kódu odpovědi, ve kterém musíme vyhledávat.
PavelKend
Profil *
Díky mnohokrát za odpovědi.
Pokud by si někdo troufl na něco podobného, nechť se mi ozve na e-mailu : pavelkend(a)seznam.cz
Díky.
ShiraNai7
Profil
Kcko:
No napsat problém to není. Že poběží dlouho se dá čekat, záleží na celkovému objemu dat, co stahuješ, odezvě toho webu, jak dobře je skript napsaný, ...

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0