2017-04-07 4 views
1

Ich bemerkte, dass ich manchmal während des Scraping blockiert, weil ein Session-Cookie auf zu vielen Seiten verwendet wurde. Gibt es eine Möglichkeit, alle Cookies beim Crawlen einfach zu löschen, um zum ursprünglichen Zustand des Crawlers zurückzukehren?Löschen Sie Cookies auf Scrapy vollständig, anstatt sie zu ändern

+4

Mögliche Duplikate von [So löschen Sie Cookies in scrapy?] (Http://stackoverflow.com/questions/21924220/how-to-clear-cookies-in-scrapy) –

+0

Vielen Dank! Ich habe diesen Thread gesehen, aber er erklärt, wie man neue Cookies einstellt und nicht, wie man sie bei bereits erbrachten Anfragen löscht. –

+0

Haben Sie die zweite Antwort gelesen? http://StackOverflow.com/a/21930089/1534704 –

Antwort

0

Mit Blick auf die ähnliche Situation selbst. Ich kann hier leicht wegkommen, aber eine Idee, die ich habe, ist, CookieMiddleware abzuleiten und dann eine Methode zu schreiben, um die jar-Variable direkt zu optimieren. Es ist schmutzig, aber vielleicht ist es eine Überlegung wert.

Eine andere Option wäre, eine Feature-Anfrage zu schreiben, um mindestens eine Funktion zum Löschen der Cookies zu haben. Es kann leicht ein weiteres Jahr dauern, um es zu implementieren, wenn es überhaupt benötigt wird, ich vertraue Scrapy-Entwicklern hier nicht besonders.

Gerade ist mir aufgefallen, dass Sie Ihre eigenen cookiejar Meta verwenden können, und wenn Sie in den sauberen Zustand zurückkehren möchten, verwenden Sie einfach anderen Wert (etwas wie Inkrementierung einer Ganzzahl würde tun).

Verwandte Themen