Script • Python drift og automatisering

ZIP-standard kontroll for scriptpakker

ZIP-standard kontroll for scriptpakker er et praktisk Python-eksempel for WEBoracle med fast ZIP-nedlasting og tilhørende forklaring.

from pathlib import Path
import zipfile

REQUIRED = {"credits.txt", "forklaring.txt", "user_manual.txt"}

def check_zip(path: Path) -> list[str]:
    issues = []
    with zipfile.ZipFile(path) as archive:
        names =
Weboracle
19.07.20260 visningerPython

ZIP-standard kontroll for scriptpakker er et praktisk Python-eksempel for WEBoracle med fast ZIP-nedlasting og tilhørende forklaring.

ZIP-standard kontroll for scriptpakker

ZIP-standard kontroll for scriptpakker er et praktisk Python-eksempel for WEBoracle med fast ZIP-nedlasting og tilhørende forklaring.

Hva scriptet gjør

Scriptet er laget som et praktisk eksempel for WEBoracle-biblioteket. Det viser en avgrenset løsning som kan kopieres, testes lokalt og bygges videre på.

Når det passer

Bruk eksempelet når du trenger en liten, tydelig startfil og ønsker å se hvordan struktur, kommentarer og testpunkter kan settes opp før produksjon.

Før bruk

  • Les forklaring og user manual i ZIP-pakken.
  • Tilpass stier, navn og tekst til ditt prosjekt.
  • Test i et lukket testmiljø før publisering.

Kode

from pathlib import Path
import zipfile

REQUIRED = {"credits.txt", "forklaring.txt", "user_manual.txt"}

def check_zip(path: Path) -> list[str]:
    issues = []
    with zipfile.ZipFile(path) as archive:
        names = set(archive.namelist())
    missing = REQUIRED - names
    script_files = names - REQUIRED
    if missing:
        issues.append(f"Missing: {', '.join(sorted(missing))}")
    if not script_files:
        issues.append("Missing main script file")
    if len(names) != 4:
        issues.append(f"Expected 4 files, found {len(names)}")
    return issues

for zip_path in sorted(Path(".").rglob("*.zip")):
    problems = check_zip(zip_path)
    print(f"{zip_path}: {'OK' if not problems else '; '.join(problems)}")