HttpProxyMiddleware بخشی از پیش‌فرض‌های داخلی دانلودر Scrapy است. برای در دسترس بودن، لازم نیست در دیکشنری DOWNLOADER_MIDDLEWARES خود پروژه ظاهر شود.

دو کنترل جداگانه برای بررسی وجود دارد:

  • HTTPPROXY_ENABLED کنترل می‌کند که مؤلفه داخلی فعال باشد یا نه.
  • مقدار None برای مسیر کلاس آن در DOWNLOADER_MIDDLEWARES آن را از زنجیره میان‌افزار ادغام‌شده حذف می‌کند.

برای مثال، این ورودی پیش‌فرض را صریحاً غیرفعال می‌کند:

DOWNLOADER_MIDDLEWARES = {
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': None,
}

زمانی که مؤلفه داخلی باید برگردد، آن بازنویسی را حذف کنید. برای بازگرداندن فقط یک ورودی، جدول قدیمی DOWNLOADER_MIDDLEWARES_BASE را در پروژه کپی نکنید؛ Scrapy پیش‌فرض‌های خود را با بازنویسی‌های پروژه ترکیب می‌کند.

میان‌افزار فعال هنوز به یک مسیر نیاز دارد، از مقادیر محیطی پشتیبانی‌شده یا از فراداده پروکسی درخواست. حضورش در گزارش راه‌اندازی به‌تنهایی به معنای تخصیص درخواست نیست.

نسخه‌های بسیار قدیمی Scrapy در زمان بارگذاری مؤلفه بدون مقادیر محیطی پروکسی متفاوت بودند. نسخه نصب‌شده را همراه با تشخیص نگه دارید، به‌جای اینکه یک مشاهده تاریخی از دوره 1.3 را قاعده فعال‌سازی کنونی بدانید.

مقالات مرتبط