Я пытаюсь настроить собственный класс промежуточного программного обеспечения загрузчика в Scrapy. Я подозреваю, что пропустил что-то очевидное, но я несколько раз перечитал документы и не нашел решений. Я немного расстраиваюсь из-за того, что должно быть чрезвычайно простой задачей, поэтому, надеюсь, кто-то сможет дать мне некоторое представление.
Я добавил следующую строку в свой файл settings.py.
DOWNLOADER_MIDDLEWARES = { 'myproject.middlewares.TestDownloader': 400 }
После добавления этой строки и запуска проекта я получил сообщение об отсутствии промежуточного программного обеспечения модуля. После некоторых исследований я обнаружил, что вам нужно добавить файл __init__.py
в папку middlewares
, чтобы Python мог его распознать. Я сделал это и теперь получаю следующую ошибку:
NameError: Module 'myproject.middlewares' doesn't define any object named 'TestDownloader'
Файл TestDownloader.py не компилируется, в то время как все остальные файлы *.py в проекте компилируются. Если я правильно понимаю, что читаю на Python, это означает, что он никуда не импортируется, но я не могу найти никаких дополнительных настроек Scrapy, которые нужно изменить, чтобы это работало.