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 ನಮೂದನ್ನು ಈ ಉಪವರ್ಗದ ಆಮದು ಮಾರ್ಗದಿಂದ ಬದಲಾಯಿಸಿ. IMAGES_STORE ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಉಳಿಸಿಕೊಳ್ಳಿ.

ಮೂಲವರ್ಗವನ್ನು ಕರೆಯುವುದು ಅದರ ಸಂರಚಿತ ಚಿತ್ರ-URL ಕ್ಷೇತ್ರ ಮತ್ತು ಕಾಲ್‌ಬ್ಯಾಕ್‌ಗಳನ್ನು ಸಂರಕ್ಷಿಸುತ್ತದೆ. ಉಪವರ್ಗವು ವಿನಂತಿ ಮಾರ್ಗವನ್ನು ಮಾತ್ರ ಸೇರಿಸುತ್ತದೆ, ಅದನ್ನು ಸಕ್ರಿಯ HttpProxyMiddleware ಬಳಸುತ್ತದೆ. ಪ್ರತಿ ಚಿತ್ರ URL ಅದರ ಗಮ್ಯಸ್ಥಾನವಾಗಿಯೇ ಉಳಿಯುತ್ತದೆ. ಪ್ರಾಕ್ಸಿ ರುಜುವಾತುಗಳಿಲ್ಲದ ಹೊಸ ಸಾರ್ವಜನಿಕ-ಚಿತ್ರ ವಿನಂತಿಗಳು, ಆ ಮಾರ್ಗಕ್ಕೆ ಅನುಮತಿ ಇದ್ದಾಗ HTTP ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿಯಿಂದ ಒಂದು ನಮೂದನ್ನು ಬಳಸಬಹುದು.

ಪುಟ ವಿನಂತಿಗಳು ತಮ್ಮದೇ ನೀತಿಯನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತವೆ. ಜಾಗತಿಕ ಪ್ರಾಕ್ಸಿ ಪರಿಸರದಲ್ಲಿ, ಈ ಆವೃತ್ತಿಯಲ್ಲಿ meta={'proxy': None} ಆಯ್ದ ಪುಟ ವಿನಂತಿಯನ್ನು ನೇರವಾಗಿಸುತ್ತದೆ.

ಡೌನ್‌ಲೋಡ್ ನಿಜವಾಗಿ ಹೊರಬಂದಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ. ಪೈಪ್‌ಲೈನ್ ಕ್ಯಾಶ್ ಹಿಟ್ ನೆಟ್‌ವರ್ಕ್ ವಿನಂತಿಯನ್ನು ತಪ್ಪಿಸಬಹುದು. ಹೊಸ ವರ್ಗಾವಣೆಗಳಿಗಾಗಿ, ಪೂರ್ಣಗೊಂಡ ಚಿತ್ರದ ಫಲಿತಾಂಶ ನಮೂದುಗಳನ್ನು ವಿನಂತಿಸಿದ URL‌ಗಳೊಂದಿಗೆ ಹೋಲಿಸಿ: ಯಶಸ್ವಿ ಕಾರ್ಯಾಚರಣೆಗಳು ಅಲ್ಲಿ ಕಾಣುತ್ತವೆ, ವೈಫಲ್ಯಗಳು ಮೂಲ ಚಿತ್ರ-URL ಕ್ಷೇತ್ರವನ್ನು ತುಂಬಿದಂತೆ ಬಿಡಬಹುದು. ಕಾಣೆಯಾದ ಫಲಿತಾಂಶಗಳನ್ನು ಡೌನ್‌ಲೋಡರ್ ಲಾಗ್‌ಗಳು ಮತ್ತು ಆಯ್ದ ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಪತ್ತೆಮಾಡಿ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು