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

Ar gyfer Scrapy 2.13.3, disodlwch y cofnod ImagesPipeline safonol yn ITEM_PIPELINES â llwybr mewnforio'r isddosbarth hwn. Cadwch IMAGES_STORE a gosodiadau eraill.

Mae galw'r rhiant yn cadw ei faes URL delwedd a'i alwadau yn ôl wedi'u ffurfweddu. Dim ond y llwybr cais y mae'r isddosbarth yn ei ychwanegu, ac mae HttpProxyMiddleware wedi'i alluogi yn ei ddefnyddio. Mae pob URL delwedd yn parhau i fod yn gyrchfan iddo. Gall ceisiadau delwedd cyhoeddus newydd heb gymwysterau dirprwy ddefnyddio cofnod o'r rhestr dirprwy HTTP pan fydd y llwybr hwnnw'n cael ei ganiatáu.

Mae ceisiadau tudalen yn cadw eu polisi eu hunain. Gydag amgylchedd dirprwy byd-eang, mae meta={'proxy': None} yn gwneud cais tudalen dethol yn uniongyrchol yn yr argraffiad hwn.

Gwiriwch fod lawrlwythiad wedi'i gyhoeddi mewn gwirionedd. Gall taro storfa'r biblinell osgoi cais rhwydwaith. Ar gyfer trosglwyddiadau newydd, cymharwch gofnodion canlyniad delweddau gorffenedig â'r URLau a geisiwyd: mae gweithrediadau llwyddiannus yn ymddangos yno, tra gall methiannau adael maes URL delwedd gwreiddiol yn llawn. Olrheiniwch ganlyniadau coll drwy logiau'r lawrlwythydd a'r dirprwy a ddewiswyd.

Erthyglau cysylltiedig