diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f5e96db --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +venv \ No newline at end of file diff --git a/downloader.py b/downloader.py new file mode 100644 index 0000000..d2a112e --- /dev/null +++ b/downloader.py @@ -0,0 +1,22 @@ +import requests +import datetime + +# file_size if byte + + +def download_file(url, chunk_size=64 * 1024, file_size=100 * 1024 * 1024): + chunk_read = 0 + s_time = datetime.datetime.now() + e_time = None + with requests.get(url, stream=True) as r: + for chunk in r.iter_content(chunk_size): + if chunk_read >= file_size: + e_time = datetime.datetime.now() + break + if chunk: + chunk_read += len(chunk) + duration = (e_time - s_time).total_seconds() + speed = chunk_read / duration / 1024 / 1024 * 8 # mega bit + # print("{} MB download".format(chunk_read / 1024 / 1024)) + # print("{} seconds".format(duration / 1)) + return speed