# -*- coding: utf-8 -*- # Module: default # Author: cache # Created on: 10.5.2020 # License: AGPL v.3 https://www.gnu.org/licenses/agpl-3.0.html import sys import galdPl import requests from bs4 import BeautifulSoup import os def get_json_files_from_folder(folder): base_url = "https://git.gald.site/gald/galdistream/src/branch/main/resources/" url = base_url + folder r = requests.get(url, timeout=10) r.raise_for_status() soup = BeautifulSoup(r.text, "html.parser") files = [] for a in soup.find_all("a", class_="ui basic label"): href = a.get("href", "") if href.endswith(".json"): file_path = href.split("/resources/")[-1] files.append(file_path) return files def update_json_db(): base_url_raw = "https://git.gald.site/gald/galdistream/raw/branch/main/resources/" folders = ["movies", "series"] all_files = [] for folder in folders: try: all_files += [f"{folder}/{file}" for file in get_json_files_from_folder(folder)] except Exception as e: print(f"Chyba při získávání souborů ze složky {folder}: {e}") for file in all_files: url = base_url_raw + file local_path = "resources/" + file try: r = requests.get(url, timeout=10) r.raise_for_status() os.makedirs(os.path.dirname(local_path), exist_ok=True) with open(local_path, "wb") as f: f.write(r.content) except Exception as e: print(f"Chyba při stahování {file}: {e}") if __name__ == '__main__': update_json_db() galdPl.router(sys.argv[2][1:])