2016-05-06 45 views
5

Ich versuche, Amazon von Scrapy kratzen. , aber ich habe diesen FehlerWie zu verhindern, dass schwarze Liste beim Schaben Amazon

DEBUG: Retrying <GET http://www.amazon.fr/Amuses-bouche-Peuvent-b%C3%A9n%C3%A9ficier-dAmazon-Premium-Epicerie/s?ie=UTF8&page=1&rh=n%3A6356734031%2Cp_76%3A437878031> 
(failed 1 times): 503 Service Unavailable 

Ich denke, dass es ist, weil = Amazon bei der Erkennung Bots ist sehr gut. Wie kann ich das verhindern?

ich benutzte time.sleep(6) vor jeder Anfrage.

Ich möchte nicht ihre API verwenden.

Ich versuchte ich tor und polipo

+0

hows der tor + polipo? funktioniert es? –

+0

@ ji-ruh für amazon non – parik

Antwort

4

Sie haben mit Amazon sehr vorsichtig sein und den Amazon Nutzungsbedingungen und Richtlinien für Web-Scraping Zusammenhang folgen.

Amazon ist ziemlich gut darin, IPs der Bots zu verbieten. Sie müssten die DOWNLOAD_DELAY und CONCURRENT_REQUESTS zwicken, um die Website seltener zu treffen und ein guter Web-scraping Bürger zu sein. Und Sie müssten IP-Adressen drehen (Sie können zum Beispiel in crawlera schauen) und user agents.

+2

Ja zu Crawlera, ich würde auch empfehlen, scrapyjs/splash zu Ihrem Stack hinzuzufügen, da Amazon oft dynamische Seitenelemente hat. –

+0

Wenn ich Crawlera benutze, wird es in Ordnung sein, so schnell zu kratzen wie Crawleras Empfehlung? 'CONCURRENT_REQUESTS = 32 CONCURRENT_REQUESTS_PER_DOMAIN = 32 AUTOTHROTTLE_ENABLED = False DOWNLOAD_TIMEOUT = 300' –

0

Dies könnte auch für Sie interessant sein, basic scrapy setup mit zwei Middlewares, eine für zufällige IP-Adresse und zweite für zufällige Benutzer-Agenten.

+0

ich tor und polipo aber ich bin die schwarze Liste gesetzt. – parik

+0

Wenn du denkst, es könnte helfen, teile deine Middleware, damit wir auch etwas ausprobieren können. Nie benutzt Polipo, werde es überprüfen! – BB04Deng

+0

jetzt benutze ich Crawlera und es funktioniert – parik

Verwandte Themen