from scrapy.pipelines.images import ImagesPipeline

class ProxiedImagesPipeline(ImagesPipeline):
    def get_media_requests(self, item, info):
        for request in super().get_media_requests(item, info):
            request.meta['proxy'] = 'http://proxy.example:8080'
            yield request

Scrapy 2.13.3-க்கு, ITEM_PIPELINES இல் உள்ள நிலையான ImagesPipeline உள்ளீட்டை இந்த துணைவகுப்பின் import பாதையுடன் மாற்றவும். IMAGES_STORE மற்றும் பிற அமைப்புகளை வைத்திருங்கள்.

பெற்றோரை அழைப்பது அதன் கட்டமைக்கப்பட்ட பட-URL புலத்தையும் callback-களையும் பாதுகாக்கிறது. துணைவகுப்பு கோரிக்கை பாதையை மட்டும் சேர்க்கிறது, அதை இயக்கப்பட்ட HttpProxyMiddleware பயன்படுத்துகிறது. ஒவ்வொரு பட URL-ம் அதன் இலக்காகவே இருக்கும். ப்ராக்ஸி சான்றுகள் இல்லாத புதிய பொது-படக் கோரிக்கைகள், அந்தப் பாதை அனுமதிக்கப்படும்போது HTTP ப்ராக்ஸி பட்டியல்இலிருந்து ஒரு உள்ளீட்டைப் பயன்படுத்தலாம்.

பக்கக் கோரிக்கைகள் தங்கள் சொந்தக் கொள்கையை வைத்திருக்கின்றன. உலகளாவிய ப்ராக்ஸி சூழலில், இந்த வெளியீட்டில் meta={'proxy': None} தேர்ந்தெடுக்கப்பட்ட பக்கக் கோரிக்கையை நேரடியாக்குகிறது.

பதிவிறக்கம் உண்மையில் வெளியிடப்பட்டதா எனச் சரிபார்க்கவும். பைப்லைன் தற்காலிகச் சேமிப்பு தாக்கம் வலையமைப்புக் கோரிக்கையைத் தவிர்க்கலாம். புதிய பரிமாற்றங்களுக்கு, நிறைவடைந்த பட முடிவு உள்ளீடுகளைக் கோரப்பட்ட URL-களுடன் ஒப்பிடுங்கள்: வெற்றிகரமான செயல்பாடுகள் அங்கே தோன்றும், தோல்விகள் அசல் பட-URL புலத்தை நிரப்பியபடி விட்டுச் செல்லலாம். காணாமற்போன முடிவுகளை பதிவிறக்கி பதிவுகள் மற்றும் தேர்ந்தெடுத்த ப்ராக்ஸி வழியாகக் கண்டறியவும்.

தொடர்புடைய கட்டுரைகள்