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)

Notið þetta mynstur með fyrirliggjandi Requests-lotu forritsins, proxy-slóðum, slóðinni og tímabundinni úttaksslóð. Fyrir opinbera HTTP-slóð útvegar HTTP-proxylistinn tillöguslóðir fyrir proxy-vörpunina þína. Streymismynstrið neytir líkamans smátt og smátt í stað þess að sækja response.content og skrifa svo annað fullstærðar hlut.

Haldið þessum eiginleika í gegnum alla niðurhalana: stream=True frestar líkamanum, en aðgangur að response.content eftir á getur samt safnað honum öllum í minnið. Bútastærð iter_content er lestrarval, ekki beiðni um HTTP bútasendingakóðun á vefsvæðinu eða proxynu.

Samhengisstjóri svarsins lokar svarinu jafnvel þótt skrif mistakist eða forritið stöðvi snemma. Sýnishorn af tímanum er ekki veggklukkufrestur fyrir alla sendinguna; stillið líftímastefnu niðurhalsins sérstaklega eftir þörfum.

Eftir árangursríka neyslu, athugið gripinn sem forritið væntir áður en endanlegt nafn er birt. Við truflun skal aðeins halda hlutaskránni samkvæmt viljandi framhaldsstefnu, með lýsigögnum sem auðkenna fjarlægu framsetninguna. Tímabundin skrá sem er ekki tóm er ekki árangursríkt niðurhal.

Tengdir greinar