Comment contourner cloudflare bot/ddos protection de Scrapy?

J'ai utilisé pour gratter e-commerce page web occasionnellement pour obtenir les prix des produits de l'information. Je n'ai pas utilisé le racloir construit à l'aide de Scrapy en temps, et hier, c'était d'essayer de l'utiliser - je rencontre un problème avec le bot de protection.

C'est à l'aide de CloudFlare protection DDOS qui est essentiellement à l'aide de JavaScript évaluation de filtrer les navigateurs (et, par conséquent, des grattoirs) avec JS désactivé. Une fois que la fonction est évaluée, la réponse avec le nombre calculé est généré. En retour, le service envoie deux cookies d'authentification qui joint à chaque demande permettent normalement d'explorer le site. Ici's la description de la façon dont il fonctionne.

J'ai également trouvé un cloudflare-gratter module Python qui utilise JS externe moteur d'évaluation pour calculer le nombre et envoyer la demande à l'arrière du serveur. Je ne suis pas sûr de la façon de l'intégrer dans Scrapy. Ou peut-être il ya une façon plus intelligente sans utiliser de JS de l'exécution? En fin de compte, c'est une forme...

J'avais apriciate toute aide.

quel est le problème avec l'exécution de la JS? beaucoup de contenu ne peut pas être atteint sans elle...
Scrapy ne fait pas de JS exécution.
sans JS, la récupération devient de plus en plus inutile de tous les temps. vous devriez envisager d'utiliser un navigateur à gratter. mon gratter les scripts peuvent obtenir derrière, de connexions, de saisir dynamique et contenu paginé, même faux-cliquer pour demander plus dynamique sous-le contenu avant de grattage, et je ne pense pas qu'ils ont été plus de 10 lignes de code ou besoin d'une grande bibliothèque externe. tous vous avez besoin est tampermonkey et téléchargement de routine... BAISER. si vous voulez plus automatisé, vous pouvez ensuite passer le script de phantomJS ou quelque chose comme ça.
pour l'exécution de JS vous pouvez utiliser splash qui est totalement intégrée avec scrapy.

OriginalL'auteur Kulbi | 2015-10-20