Scrapy ର ଇମେଜ୍ ଅନୁରୋଧରେ ପ୍ରକ୍ସି ସଂଯୋଗ କରନ୍ତୁ
ImagesPipeline ଯେଉଁ Requests ତିଆରି କରେ ସେଗୁଡ଼ିକୁ ସଜାନ୍ତୁ, ଯାହାଫଳରେ ପାଇପଲାଇନର ଅନୁରୋଧ-ତର୍କ ପୁନଃନିର୍ମାଣ ନକରି ଇମେଜ୍ ଡାଉନଲୋଡ୍ ପ୍ରକ୍ସି ପାଇବ।
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 କ୍ଷେତ୍ର ଏବଂ କଲବ୍ୟାକ୍ ସଂରକ୍ଷିତ ରହେ। ଉପଶ୍ରେଣୀ କେବଳ ଅନୁରୋଧ ପଥ ଯୋଡ଼େ, ଯାହାକୁ ସକ୍ରିୟ HttpProxyMiddleware ବ୍ୟବହାର କରେ। ପ୍ରତ୍ୟେକ ଇମେଜ୍ URL ଏହାର ଲକ୍ଷ୍ୟ ରହେ। ପ୍ରକ୍ସି ପ୍ରମାଣପତ୍ର ନଥିବା ନୂଆ ସାର୍ବଜନୀନ-ଇମେଜ୍ ଅନୁରୋଧ, ସେହି ପଥ ଅନୁମତିପ୍ରାପ୍ତ ହେଲେ HTTP ପ୍ରକ୍ସି ତାଲିକାରୁ ଏକ ପ୍ରବେଶ ବ୍ୟବହାର କରିପାରିବ।
ପୃଷ୍ଠା ଅନୁରୋଧ ନିଜସ୍ୱ ନୀତି ରଖେ। ବୈଶ୍ୱିକ ପ୍ରକ୍ସି ପରିବେଶରେ, ଏହି ସଂସ୍କରଣରେ meta={'proxy': None} ଚୟନିତ ପୃଷ୍ଠା ଅନୁରୋଧକୁ ସିଧାସଳଖ କରେ।
ଡାଉନଲୋଡ୍ ପ୍ରକୃତରେ ନିର୍ଗତ ହୋଇଛି କି ନାହିଁ ଯାଞ୍ଚ କରନ୍ତୁ। ପାଇପଲାଇନ କ୍ୟାସ୍ ହିଟ୍ ନେଟୱାର୍କ ଅନୁରୋଧକୁ ଏଡ଼ାଇ ପାରେ। ନୂଆ ସ୍ଥାନାନ୍ତର ପାଇଁ, ସମ୍ପୂର୍ଣ୍ଣ-ଇମେଜ୍ ଫଳାଫଳ ପ୍ରବେଶଗୁଡ଼ିକୁ ଅନୁରୋଧିତ URL ସହିତ ତୁଳନା କରନ୍ତୁ: ସଫଳ କାର୍ଯ୍ୟ ସେଠାରେ ଦେଖାଯାଏ, ମାତ୍ର ବିଫଳତା ମୂଳ ଇମେଜ୍-URL କ୍ଷେତ୍ରକୁ ଭରା ରଖିପାରେ। ନିଖୋଜ ଫଳାଫଳକୁ ଡାଉନଲୋଡର ଲଗ୍ ଏବଂ ଚୟନିତ ପ୍ରକ୍ସି ମାଧ୍ୟମରେ ଅନୁସରଣ କରନ୍ତୁ।