Add functionality to fetch and update JSON files from remote resources, including episode details for 'Game of Thrones'. Remove unnecessary .DS_Store files.

This commit is contained in:
2025-07-29 16:46:47 +02:00
parent ed162aa22b
commit e6559f0769
4 changed files with 54 additions and 0 deletions

39
main.py
View File

@@ -6,6 +6,45 @@
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:])