# DailySuguru — technické poznámky ## Přehled skriptů | Skript | Popis | |--------|-------| | `preskumaj_suguru.py` | Průzkumný — vytáhne `gameLevels` z JS kontextu stránky | | `stahni_suguru.py` | Stáhne data z webu a uloží do MySQL (celý rok najednou) | | `vykresli_suguru.py` | Generuje PDF z dat v MySQL (reportlab, vektorové) | ## Zdroj dat Stránka: https://www.solitaire.org/daily-suguru/ Stejná architektura jako ostatní puzzle — `game.php` načte `gameLevels` s daty pro celý rok (366 dní × 3 velikosti). Klíče `"MM-DD"`, bez roku. ## Obtížnosti (velikosti mřížek) | Klíč | Rozměr | |------|--------| | 6x6 | 6×6 | | 8x8 | 8×8 | | 10x10 | 10×10 | ## Datová struktura `gameLevels` Každý záznam je objekt `{colors, clues, solution}`: - `colors` = skupiny buněk (písmena A–Z), flat string řádek po řádku - `clues` = nápovědy, tečka = prázdná buňka - `solution` = řešení, flat string číslic Pravidla Suguru: každá skupina velikosti N obsahuje čísla 1–N, žádné dvě sousední buňky (včetně diagonálně) nesmí mít stejné číslo. ## MySQL tabulka `puzzle.puzzles` Sdílená tabulka s ostatními puzzle. Pro Suguru: - `game_type` = `'suguru'` - `difficulty` = `'6x6'` / `'8x8'` / `'10x10'` - `puzzle` = `colors|clues` (dva stringy spojené `|`) - `solution` = flat string řešení - `extra` = `{"grid_size": 6}` / `8` / `10` - `source` = `'solitaire.org'` Stav: celý rok 2026 naplněn (1095 řádků = 365 dní × 3 velikosti).