47 votes

Comment donner un délai entre chaque requête dans scrapy ?

Je ne veux pas ramper simultanément et être bloqué. Je voudrais envoyer une requête par seconde.

6voto

Jeff P Chacko Points 1873

Si vous souhaitez conserver un délai de téléchargement d'une seconde exactement, le paramètre DOWNLOAD_DELAY=1 est le moyen de le faire.

Mais scrapy dispose également d'une fonctionnalité permettant de définir automatiquement des délais de téléchargement appelée AutoThrottle . Il fixe automatiquement les délais en fonction de la charge du serveur Scrapy et du site Web que vous exploitez. Cela fonctionne mieux que de définir un délai arbitraire.

Plus d'informations à ce sujet sur http://doc.scrapy.org/en/1.0/topics/autothrottle.html#autothrottle-extension
J'ai exploré plus de 100 domaines et je n'ai pas été bloqué avec l'AutoThrottle activé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X