Projekt „Nový
hledač“
Stahování – problémy
Základní úlohy – problémy
Práce s WWW adresami.
User-agent
Time-out při stahování.
Maximální délka stažených dat.
Převod do UTF8 (DetectEncodingFromByteOrderMarks).
Otázky a odpovědi
Používat
název WWW adresa nebo URL?
WWW adresy: domény, katalogy.
HTML 0-4, 5?
HTTPS
Vyhodnocování WWW adres z tagů HREF:
– vzít v ůvahu možný
příkaz BASE, absolutní, relativní, bez lomítka
a s lomítkem na konci, bez názvu souboru a
s názvem souboru na konci, index, default, home, welcome, .htm,
.html, .php…1
follow/nofollow:
- direktivy v HTML head
- součást tagu HREF
- robots.txt
Vyhodnocení adres, určených v HREF JavaScriptem.
Kódování (určení kódu stránky a
převod znaků do kódu UTF-8).
Překódovat hned při stažení do UTF-8 nebo
používat parser pro různé kódy, jak tomu parseru
zadat kód stránky.
Čeština: domény .cz bez vyjímky?, určení,
zda je stránka v češtině, podle čeho určit
(http, HTML, diakritika…), kdy takovou stránku ukládat, kdy
z této stránky vyhodnocovat WWW adresy z tagů HREF
pro další stahování?
Variabilní stránky (různé skiny,
filtrování, jazyky na jedné stránce)
Různé kombinace tagů na stránce, např. když
je první p nebo div header, který je na každý
stránce stejný, a title se neliší.
Řěšit totožné nebo podobné stránky
(duplicity) pod různými adresami přes sekundární
hash:
- součet kódů znaků na stránce
- součet kódů znaků na stránce - modulo
Prodlevy pro stahování z 1 serveru, abych ho neschodil.
Zadat downloaderu time-out pro maximální neodezvu serveu.
Omezit
maximální velikost stahované stránky.
Omezit stahovaný počet podstránek z jedné
domény nebo z jednoho stromu či podstromu, nebo
též pomocí počtu lomítek ve WWW adrese.
Ukládat do texťáku:
- WWW adresu
- chybový kód
- hlavičku
- zdroják
- délka zdrojáku (počet znaků)
- součet znaků zdrojáku
Správně
by se měla využívat jedna connection pro více
stránek - servery to mají raději, teda pokud
nezasílají connection:close.