Source code for codebots.utilities.web_tools

import requests
from tqdm import tqdm


[docs]def download_file(url, file_path): """[summary] Parameters ---------- url : str url to the file to be downloaded temp_dir : obj TemporaryDirectory object containing the msi package file_path : str complete path (directory/name.msi) to the msi package """ r = requests.get(url, stream=True) # Streaming to allow the progressbar. total_size_in_bytes = int(r.headers.get('content-length', 0)) block_size = 1024 # 1 Kibibyte progress_bar = tqdm(total=total_size_in_bytes, unit='iB', unit_scale=True) with open(file_path, 'wb') as f: for data in r.iter_content(block_size): progress_bar.update(len(data)) f.write(data) progress_bar.close()
# if total_size_in_bytes != 0 and progress_bar.n != total_size_in_bytes: # print("ERROR, something went wrong") # return 1 # else: # return 0 # if __name__ == "__main__": # download_file(url='https://miktex.org/download/ctan/systems/win32/miktex/setup/windows-x64/basic-miktex-21.8-x64.exe')