Jak to funguje
Web pravidelně prochází kalendář výsledků Českého atletického svazu, stahuje výsledkové listiny jednotlivých závodů a ukládá je do databáze PostgreSQL. Nad ní pak můžeš procházet závody, atlety, oddíly a tabulky.
Úloha scan načte kalendář výsledků za aktuální a minulý měsíc (venkovní HL i halová HA sezóna). Každý závod s odkazem na výsledky zařadí do fronty.
Závody čekají ve frontě. Novější a čerstvé mají přednost, historie se dotahuje s nižší prioritou. Závody z posledních 10 dní se stahují znovu, protože pořadatelé výsledky ještě opravují.
Úloha process stáhne hlavičku závodu a celou výsledkovou listinu, rozebere disciplíny, kategorie, rozběhy, finále, víceboje i štafety a výsledky závodu v jedné transakci nahradí.
Atlet se páruje podle ČAS ID (EAN). Bez něj podle jména, ročníku a oddílu. Když atlet ID později dostane, záznamy se spojí. Úloha members načte registr členů oddílu Moravská Slavia.
| Kdy | Příkaz | Naposledy |
|---|---|---|
| 7,37 * * * * | python -m atletika scanKalendář výsledků – aktuální a minulý měsíc, venku (HL) i hala (HA) |
28. 10. 2026 22:37 |
| */10 * * * * | python -m atletika process --limit 40Fronta závodů – stáhne a uloží výsledky dalších závodů |
28. 10. 2026 22:50 |
| 20 */2 * * * | python -m atletika backfill --months 2Historie – projde další starší měsíce kalendáře (zpětné dotažení) |
28. 10. 2026 22:20 |
| 15 4 * * * | python -m atletika membersRegistr členů oddílu (Moravská Slavia) + doplnění pohlaví |
28. 10. 2026 21:12 |
| 45 3 * * * | python -m atletika backupZáloha databáze (pg_dump do /backups, drží 14 dní) |
28. 10. 2026 21:13 |
docker exec atletika-cron python -m atletika <příkaz>, např. event 88254 stáhne jeden konkrétní závod.| POST /kalendar/vysledky/0 | seznam závodů za měsíc a typ sezóny (HL/HA), odkazy na výsledky |
| GET /vysledky/{id}/0/6 | hlavička závodu: název, datum, místo, pořadatel |
| GET /vysledky/{id} | celá výsledková listina (všechny disciplíny, běhy, souhrnné výsledky) |
| POST /clenska-sekce/atleti/AthleteData/ | registr atletů (členové MOSBR, TeamID 1106) |
| GET /vysledky-atleta/{rok}/{EAN} | karta atleta, odtud kategorie (pohlaví), když ho neznáme z výsledků |
backfill postupně prochází starší měsíce kalendáře až do 2015-01.| Rok | Měsíců HL / HA | Závodů | Staženo | Výsledků |
|---|---|---|---|---|
| 2026 | 4 / 4 | 933 | 52 % | 68 211 |