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

Foar Scrapy 2.13.3 ferfange jo de standert ImagesPipeline-yngong yn ITEM_PIPELINES troch it ymportpaad fan dizze subklasse. Behâld IMAGES_STORE en oare ynstellingen.

It oanroppen fan 'e âlder bewarret syn ynstelde byld-URL-fjild en callbacks. De subklasse foeget allinnich de oanfraachrûte ta, dy't de aktivearre HttpProxyMiddleware brûkt. Eltse byld-URL bliuwt syn bestimming. Nije oanfragen foar iepenbiere bylden sûnder proxy-gegevens kinne in yngong út 'e HTTP-proxylist brûke as dy rûte tastien is.

Siden-oanfragen hâlde har eigen belied. Mei in globale proxy-omjouwing makket meta={'proxy': None} in keazen side-oanfraach direkt yn dizze ferzje.

Kontrolearje oft in download echt útstjoerd is. In pipeline-cachetreffer kin in netwurkoanfraach foarkomme. Foar nije oerdrachten fergelykje jo de resultaatyngongen fan foltôge bylden mei de oanfrege URL's: slagge operaasjes ferskine dêr, wylst mislearrings it oarspronklike byld-URL-fjild fol litte kinne. Folgje ûntbrekkende resultaten fia de logs fan 'e downloader en de keazen proxy.

Relatearre artikelen