Files
BetterLeavesLite/download_helper.py

27 lines
1.0 KiB
Python

from os import path
from tqdm import tqdm
import requests
def downloadFromModrinth(project_slug):
response = requests.get(f'https://api.modrinth.com/v2/project/{project_slug}/version')
latestFile = response.json()[0]['files'][0]
latestFileURL = latestFile['url']
if len(latestFileURL) < 1: raise Exception(f'Could not get the latest version URL for {project_slug}')
download_stream = requests.get(latestFileURL, stream=True)
file_name = latestFile['filename']
file_path = 'input/texturepacks'
print(f'Downloading texturepack: {project_slug} (Latest version: {file_name})')
location = path.join(file_path, file_name)
total = int(download_stream.headers.get('content-length', 0))
with open(location, "wb") as handle, tqdm(
unit="kB",
desc=file_name,
total=total,
unit_scale=True,
unit_divisor=1024,) as progressbar:
for data in download_stream.iter_content(chunk_size=1024):
size = handle.write(data)
progressbar.update(size)