2009-04-28 5 views
8

Ho un semplice web crawler per richiedere tutte le pagine dalla sitemap di un sito Web che ho bisogno di memorizzare nella cache e indicizzare. Dopo varie richieste, il sito Web inizia a pubblicare pagine vuote.Etichetta corretta per le richieste HTTP del crawler Web

Non c'è nulla nel loro robots.txt eccetto il collegamento alla loro sitemap, quindi presumo di non aver infranto le loro "regole". Ho un'intestazione descrittiva che si collega esattamente a ciò che le mie intenzioni sono e le uniche pagine che sottopongo a scansione provengono dalla loro sitemap.

I codici di stato http sono tutti ancora OK, quindi posso solo immaginare che stanno evitando un gran numero di richieste http in un breve periodo di tempo. Cosa è considerato un ragionevole ritardo tra le richieste?

Ci sono altre considerazioni che ho trascurato che potrebbero potenzialmente causare questo problema?

+0

cosa vuoi dire non c'è nulla nel loro robots.txt tranne che per un link alla loro sitemap? – freespace

+0

non c'è nulla nel non consentire e il loro permesso è * – Adam

risposta

8

Ogni sito presenta caratteristiche di crawler e abuso diverse.

La chiave per qualsiasi crawler è quella di emulare l'attività umana e obbedire al file robots.txt.

Un crawl esaustivo farà inciampare alcuni siti web e ti spegneranno indipendentemente da quanto tu stia andando lento, mentre alcuni host non si preoccupano che i crawler girino e succhino tutto in una volta sola.

  • In generale non si desidera richiedere le pagine più rapidamente di 6 al minuto (sulla velocità umana).
  • Sarai più sicuro seguendo i collegamenti in ordine di visibilità sulla pagina web.
  • Cerca di ignorare i link che non sono visibili sulla pagina web (molte persone usano honeypot).

Se tutto il resto fallisce, non richiedere più rapidamente di una pagina al minuto. Se un sito web ti blocca a questo ritmo, contattalo direttamente: ovviamente non vogliono che tu usi il loro contenuto in quel modo.

2

Immagino che Wikipedia abbia a decent reference sull'argomento. Obbedali e, per cortesia, un po 'di più.

Ad esempio, probabilmente aumenterei la velocità di connessione a un colpo al secondo, o rischierei un attacco DoS involontario.