Benutzerdefinierte Downloader-Middleware kann in Scrapy nicht definiert werden

Ich versuche, eine benutzerdefinierte Downloader-Middleware-Klasse in Scrapy einzurichten. Ich vermute, dass ich etwas Offensichtliches verpasst habe, aber ich habe die Dokumente ein paar Mal durchgelesen und keine Lösungen gefunden. Ich bin ein bisschen frustriert, was eine extrem einfache Aufgabe sein sollte, also kann mir hoffentlich jemand einen Einblick verschaffen.

Ich habe meiner settings.py-Datei die folgende Zeile hinzugefügt.

DOWNLOADER_MIDDLEWARES = { 'myproject.middlewares.TestDownloader': 400 }

Nachdem ich diese Zeile hinzugefügt und das Projekt ausgeführt habe, ist ein Fehler bezüglich der nicht vorhandenen Modul-Middleware aufgetreten. Nach einigen Recherchen habe ich festgestellt, dass Sie eine hinzufügen müssen__init__.py Datei an diemiddlewares Ordner, in dem Python es erkennt. Ich habe dies getan und erhalte jetzt den folgenden Fehler:

NameError: Module 'myproject.middlewares' doesn't define any object named 'TestDownloader'

Die Datei TestDownloader.py wird nicht kompiliert, während alle anderen * .py-Dateien im Projekt kompiliert werden. Wenn ich meine Python-Anzeige richtig verstehe, bedeutet dies, dass sie nirgendwo importiert wird, aber ich kann keine zusätzlichen Scrapy-Einstellungen finden, die geändert werden müssen, damit dies funktioniert.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage