with session.get(url, stream=True, proxies=routes,
                 timeout=(5, 30)) as response:
    response.raise_for_status()
    with open(part_path, 'wb') as output:
        for chunk in response.iter_content(chunk_size=64 * 1024):
            if chunk:
                output.write(chunk)

ଏହି ପ୍ୟାଟର୍ଣ୍ଣକୁ ଆପ୍ଲିକେସନର ବିଦ୍ୟମାନ Requests ସେସନ, ପ୍ରକ୍ସି ମାର୍ଗ, URL ଏବଂ ଅସ୍ଥାୟୀ ଆଉଟପୁଟ୍ ପଥ ସହିତ ବ୍ୟବହାର କରନ୍ତୁ। ଏକ ସାର୍ବଜନୀନ HTTP ମାର୍ଗ ପାଇଁ, HTTP ପ୍ରକ୍ସି ତାଲିକା ଆପଣଙ୍କ ପ୍ରକ୍ସି ମ୍ୟାପିଂ ପାଇଁ ପ୍ରାର୍ଥୀ ଠିକଣା ଯୋଗାଏ। ଷ୍ଟ୍ରିମିଂ ପ୍ୟାଟର୍ଣ୍ଣ response.content ପାଇ ପରେ ଦ୍ୱିତୀୟ ପୂର୍ଣ୍ଣ-ଆକାରର ବସ୍ତୁ ଲେଖିବା ପରିବର୍ତ୍ତେ ଶରୀରକୁ କ୍ରମାଗତ ଭାବରେ ବ୍ୟବହାର କରେ।

ଡାଉନଲୋଡ୍ ସାରା ସେହି ଗୁଣ ବଜାୟ ରଖନ୍ତୁ: stream=True ଶରୀରକୁ ଘୁଞ୍ଚାଏ, କିନ୍ତୁ ପରେ response.content କୁ ପ୍ରବେଶ କରିବା ତଥାପି ସବୁକୁ ସ୍ମୃତିରେ ସଂଗ୍ରହ କରିପାରେ। iter_content ର ଖଣ୍ଡ ଆକାର ଏକ ପଠନ ପସନ୍ଦ, ୱେବସାଇଟ୍ କିମ୍ବା ପ୍ରକ୍ସିରେ HTTP ଖଣ୍ଡିତ ସ୍ଥାନାନ୍ତର କୋଡିଂ ପାଇଁ ଅନୁରୋଧ ନୁହେଁ।

ପ୍ରତିକ୍ରିୟାର ସନ୍ଦର୍ଭ ପରିଚାଳକ ଲେଖା ବିଫଳ ହେଲେ ମଧ୍ୟ କିମ୍ବା ଆପ୍ଲିକେସନ ଶୀଘ୍ର ବନ୍ଦ ହେଲେ ମଧ୍ୟ ପ୍ରତିକ୍ରିୟା ବନ୍ଦ କରେ। ଉଦାହରଣର ଟାଇମଆଉଟ୍ ଯୋଡ଼ି ସମଗ୍ର ସ୍ଥାନାନ୍ତର ପାଇଁ ପ୍ରକୃତ ସମୟସୀମା ନୁହେଁ; ଆବଶ୍ୟକ ଅନୁସାରେ ଡାଉନଲୋଡ୍‌ର ଆୟୁ ନୀତି ଅଲଗା ଭାବରେ ସେଟ୍ କରନ୍ତୁ।

ସଫଳ ବ୍ୟବହାର ପରେ, ଚୂଡ଼ାନ୍ତ ନାମ ପ୍ରକାଶ କରିବା ପୂର୍ବରୁ ଆପ୍ଲିକେସନ ଯାହା ଆଶା କରେ ସେହି ଆର୍ଟିଫ୍ୟାକ୍ଟ ଯାଞ୍ଚ କରନ୍ତୁ। ବାଧା ହେଲେ, ଆଂଶିକ ଫାଇଲକୁ କେବଳ ଉଦ୍ଦେଶ୍ୟମୂଳକ ପୁନଃଆରମ୍ଭ ନୀତି ଅଧୀନରେ ରଖନ୍ତୁ, ଦୂର ପ୍ରତିନିଧିତ୍ୱ ଚିହ୍ନଟ କରୁଥିବା ମେଟାଡାଟା ସହିତ। ଖାଲି ନଥିବା ଅସ୍ଥାୟୀ ଫାଇଲ ସଫଳ ଡାଉନଲୋଡ୍ ନୁହେଁ।

ସମ୍ପର୍କିତ ପ୍ରବନ୍ଧ