Requests மற்றும் iter_content உடன் ப்ராக்ஸி வழியாக பதிவிறக்கவும்
வழக்கமான நிலை சரிபார்ப்புகள், சுத்தம் செய்தல் மற்றும் பகுதி வெளியீட்டிற்கான வேண்டுமென்றே உருவாக்கப்பட்ட கொள்கையை பராமரித்து Requests பதிலை படிப்படியாக பயன்படுத்தவும்.
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 துண்டு பரிமாற்ற குறியாக்கத்திற்கான கோரிக்கை அல்ல.
பதிலின் சூழல் மேலாளர் எழுத்து தோல்வியடைந்தாலும் அல்லது பயன்பாடு முன்கூட்டியே நிறுத்தப்பட்டாலும் பதிலை மூடுகிறது. எடுத்துக்காட்டு நேர வரம்பு ஜோடி முழு பரிமாற்றத்திற்கான உண்மையான காலக்கெடு அல்ல; தேவைக்கேற்ப பதிவிறக்கத்தின் ஆயுள் கொள்கையை தனியாக அமைக்கவும்.
வெற்றிகரமான பயன்பாட்டிற்குப் பிறகு, இறுதி பெயரை வெளியிடுவதற்கு முன் பயன்பாடு எதிர்பார்க்கும் ஆர்ட்டிஃபாக்ட்டை சரிபார்க்கவும். தடங்கல் ஏற்பட்டால், பகுதி கோப்பை வேண்டுமென்றே உருவாக்கப்பட்ட மீண்டும் தொடக்க கொள்கையின் கீழ் மட்டுமே வைத்திருங்கள், தொலை பிரதிநிதித்துவத்தை அடையாளம் காணும் மெட்டாடேட்டாவுடன். காலியாக இல்லாத தற்காலிக கோப்பு வெற்றிகரமான பதிவிறக்கம் அல்ல.