وكلاء لكل طلب مع وسيط وكيل HTTP في Scrapy
استخدم بيانات وصف طلبات Scrapy ووسيط الوكيل قبل نسخ وسيط مصادقة مخصص قديم إلى الزاحف.
يقرأ وسيط وكيل HTTP في Scrapy الوكيل من بيانات وصف الطلب:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
استبدل نقطة النهاية الواردة في التوثيق وأبقِ الوسيط مفعّلًا. تقدّم قائمة وكلاء HTTP مرشحين عامين لعنوان URL لهذا الطلب. هذا يختار مسار الطلب؛ أما مجموعة الوكلاء فتحتاج منطق اختيار منفصلًا.
المصادقة تتبع نقطة النهاية المختارة
يتعامل الوسيط المدمج مع بيانات الاعتماد المقدمة عبر عنوان URL للوكيل المدعوم وترويسة التفويض المرتبطة به. هرّب محارف URL المحجوزة وتجنّب تسجيل ذلك العنوان.
لا ينبغي لوسيط منفصل الاحتفاظ بترويسة Basic للوكيل السابق بعد تغيّر نقطة النهاية. دع طبقة واحدة تدير المسار وبيانات اعتماده معًا.
ترتيب الاختيار والافتراضيات
إذا اختار وسيط التنزيل المخصص الوكيل، فشغّله قبل أن يعالج وسيط الوكيل المدمج الطلب. تحقق من ترتيب الإصدار المثبت وواجهته البرمجية؛ فاستيرادات scrapy.contrib المهجورة تنتمي إلى إصدارات أقدم.
يمكن لبيئة العملية أيضًا توفير افتراضيات خاصة بالمخطط. استخدم سلوك بيانات proxy الوصفية الخاصة الموثق لطلب مباشر متعمد: غياب المفتاح لا يعني بالضرورة الوصول المباشر.
افحص النتيجة الفعلية. الخطأ 407 يتعلق بمصادقة الوكيل، أما حدّ معدل موقع أو منع وصول فقد يأتي بعد أن يعمل المسار بشكل صحيح.