Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
timeout-minutes: 5
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
strategy:
matrix:
os: ['ubuntu-latest', 'windows-latest']
python-version: ['3.9', '3.13']
python-version: ['3.10', '3.13']

steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Posledním aspektem je aktualizace dat. V tuto chvíli máme hotové jednorázov

## Lokální spuštění

Účelem projektu je, aby se dal snadno použít nejen autorem. Pro základní použití vám postačí Python (3.9+) a nic jiného. Stačí si nainstalovat pár základních závislostí a můžete data nahrát do CSV nebo i databáze - podporovaná je SQLite (vestavěná do Pythonu), DuckDB a PostgreSQL.
Účelem projektu je, aby se dal snadno použít nejen autorem. Pro základní použití vám postačí Python (3.10+) a nic jiného. Stačí si nainstalovat pár základních závislostí a můžete data nahrát do CSV nebo i databáze - podporovaná je SQLite (vestavěná do Pythonu), DuckDB a PostgreSQL.

```sh
python3 -m venv .venv
Expand Down
8 changes: 6 additions & 2 deletions data/justice/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ def zpracuj_ds(url, schemas, outdir, partial, autogen, icos):
row = extrahuj(udaj_raw, schema)
row = uprav_data(row, schemasd[udaj_typ])
row = {
k: json.dumps(v) if isinstance(v, dict) else v
k: json.dumps(v, ensure_ascii=False) if isinstance(v, dict) else v
for k, v in row.items()
}
row["ico"] = ico
Expand All @@ -235,7 +235,11 @@ def zpracuj_ds(url, schemas, outdir, partial, autogen, icos):
row = extrahuj(podudaj_raw, schema)
row = uprav_data(row, schemasd[podudaj_typ])
row = {
k: json.dumps(v) if isinstance(v, dict) else v
k: (
json.dumps(v, ensure_ascii=False)
if isinstance(v, dict)
else v
)
for k, v in row.items()
}
row["ico"] = ico
Expand Down
130 changes: 52 additions & 78 deletions data/justice/schema.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from sqlalchemy import Column, ForeignKey, MetaData, Table
from sqlalchemy import JSON, Column, ForeignKey, MetaData, Table
from sqlalchemy.sql.sqltypes import Boolean, Date, Integer, Numeric, Text

meta = MetaData()
Expand Down Expand Up @@ -204,16 +204,7 @@
Column("datum_zapis", Date, nullable=False),
Column("datum_vymaz", Date, nullable=True),
Column("udaj_typ", Text, nullable=False),
Column("stat", Text, nullable=True),
Column("adresa", Text, nullable=True),
Column("obec", Text, nullable=True),
Column("cast_obce", Text, nullable=True),
Column("ulice", Text, nullable=True),
Column("cislo_po", Text, nullable=True),
Column("cislo_or", Text, nullable=True),
Column("cislo_text", Text, nullable=True),
Column("psc", Text, nullable=True),
Column("okres", Text, nullable=True),
Column("adresa", JSON, nullable=True),
),
Table(
"konkurs_prohlaseni",
Expand Down Expand Up @@ -263,6 +254,7 @@
Column("datum_zapis", Date, nullable=False),
Column("datum_vymaz", Date, nullable=True),
Column("udaj_typ", Text, nullable=False),
Column("text_za_osobu", Text, nullable=True),
Column("funkce", Text, nullable=True),
Column("funkce_od", Date, nullable=True),
Column("clenstvi_od", Date, nullable=True),
Expand All @@ -276,29 +268,8 @@
Column("reg_cislo", Text, nullable=True),
Column("ico_angos", Integer, nullable=True),
Column("euid", Text, nullable=True),
Column("adresa_stat", Text, nullable=True),
Column("adresa_obec", Text, nullable=True),
Column("adresa_cast_obce", Text, nullable=True),
Column("adresa_ulice", Text, nullable=True),
Column("adresa_cislo_po", Text, nullable=True),
Column("adresa_psc", Text, nullable=True),
Column("adresa_okres", Text, nullable=True),
Column("adresa_cislo_or", Text, nullable=True),
Column("adresa_adresa_text", Text, nullable=True),
Column("adresa_cislo_ev", Text, nullable=True),
Column("adresa_doplnujici_text", Text, nullable=True),
Column("adresa_cislo_text", Text, nullable=True),
Column("bydliste_stat", Text, nullable=True),
Column("bydliste_ulice", Text, nullable=True),
Column("bydliste_obec", Text, nullable=True),
Column("bydliste_psc", Text, nullable=True),
Column("bydliste_cast_obce", Text, nullable=True),
Column("bydliste_cislo_po", Text, nullable=True),
Column("bydliste_cislo_or", Text, nullable=True),
Column("bydliste_okres", Text, nullable=True),
Column("bydliste_cislo_ev", Text, nullable=True),
Column("bydliste_cislo_text", Text, nullable=True),
Column("bydliste_doplnujici_text", Text, nullable=True),
Column("adresa", JSON, nullable=True),
Column("bydliste", JSON, nullable=True),
),
Table(
"zahajeni_zruseni",
Expand Down Expand Up @@ -372,15 +343,7 @@
Column("osoba_jmeno", Text, nullable=True),
Column("osoba_prijmeni", Text, nullable=True),
Column("osoba_datum_narozeni", Date, nullable=True),
Column("adresa_stat_nazev", Text, nullable=False),
Column("adresa_obec", Text, nullable=True),
Column("adresa_ulice", Text, nullable=True),
Column("adresa_psc", Text, nullable=True),
Column("adresa_cast_obce", Text, nullable=True),
Column("adresa_cislo_po", Integer, nullable=True),
Column("adresa_cislo_or", Integer, nullable=True),
Column("adresa_okres", Text, nullable=True),
Column("adresa_adresa_text", Text, nullable=True),
Column("adresa", JSON, nullable=True),
),
Table(
"odstepny_zavod_vedouci",
Expand All @@ -395,14 +358,7 @@
Column("osoba_datum_narozeni", Date, nullable=True),
Column("osoba_titul_pred", Text, nullable=True),
Column("osoba_titul_za", Text, nullable=True),
Column("adresa_stat_nazev", Text, nullable=True),
Column("adresa_ulice", Text, nullable=True),
Column("adresa_psc", Text, nullable=True),
Column("adresa_obec", Text, nullable=True),
Column("adresa_cast_obce", Text, nullable=True),
Column("adresa_cislo_po", Integer, nullable=True),
Column("adresa_cislo_or", Integer, nullable=True),
Column("adresa_okres", Text, nullable=True),
Column("adresa", JSON, nullable=True),
),
Table(
"nesrovnalost",
Expand Down Expand Up @@ -450,23 +406,17 @@
Column("osoba_datum_narozeni", Date, nullable=True),
Column("osoba_titul_pred", Text, nullable=True),
Column("osoba_titul_za", Text, nullable=True),
Column("adresa_stat_nazev", Text, nullable=True),
Column("adresa_obec", Text, nullable=True),
Column("adresa_cast_obce", Text, nullable=True),
Column("adresa_ulice", Text, nullable=True),
Column("adresa_cislo_po", Text, nullable=True),
Column("adresa_cislo_or", Text, nullable=True),
Column("adresa_psc", Text, nullable=True),
Column("adresa_okres", Text, nullable=True),
Column("adresa_cislo_ev", Text, nullable=True),
Column("adresa_text", Text, nullable=True),
Column("bydliste_stat_nazev", Text, nullable=True),
Column("bydliste_obec", Text, nullable=True),
Column("bydliste_cast_obce", Text, nullable=True),
Column("bydliste_cislo_po", Text, nullable=True),
Column("bydliste_cislo_or", Text, nullable=True),
Column("bydliste_psc", Text, nullable=True),
Column("bydliste_ulice", Text, nullable=True),
Column("adresa", JSON, nullable=True),
Column("bydliste", JSON, nullable=True),
),
Table(
"pravo_statu",
meta,
Column("ico", Integer, nullable=False),
Column("datum_zapis", Date, nullable=False),
Column("datum_vymaz", Date, nullable=True),
Column("popis", Text, nullable=True),
Column("stat", Text, nullable=True),
),
Table(
"ucel_fondu",
Expand All @@ -487,6 +437,39 @@
Column("datum_zverejneni", Text, nullable=False),
Column("zverejneni", Text, nullable=False),
),
Table(
"sverensky_spravce",
meta,
Column("ico", Integer, nullable=False),
Column("datum_zapis", Date, nullable=False),
Column("datum_vymaz", Date, nullable=True),
Column("spravce", Boolean, nullable=True),
Column("osoba_ico", Integer, nullable=True),
Column("osoba_regcislo", Text, nullable=True),
Column("osoba_jmeno", Text, nullable=True),
Column("osoba_prijmeni", Text, nullable=True),
Column("osoba_datum_narozeni", Date, nullable=True),
Column("osoba_titul_pred", Text, nullable=True),
Column("osoba_titul_za", Text, nullable=True),
Column("adresa", JSON, nullable=True),
Column("bydliste", JSON, nullable=True),
Column("dorucovaci", JSON, nullable=True),
),
Table(
"obmysleny",
meta,
Column("ico", Integer, nullable=False),
Column("datum_zapis", Date, nullable=False),
Column("datum_vymaz", Date, nullable=True),
Column("udelen_souhlas", Boolean, nullable=False),
Column("osoba_ico", Integer, nullable=True),
Column("osoba_jmeno", Text, nullable=True),
Column("osoba_prijmeni", Text, nullable=True),
Column("osoba_datum_narozeni", Date, nullable=True),
Column("osoba_titul_pred", Text, nullable=True),
Column("osoba_titul_za", Text, nullable=True),
Column("adresa", JSON, nullable=True),
),
Table(
"obmysleny_zpusob",
meta,
Expand All @@ -508,16 +491,7 @@
Column("osoba_datum_narozeni", Date, nullable=True),
Column("osoba_titul_pred", Text, nullable=True),
Column("osoba_titul_za", Text, nullable=True),
Column("adresa_stat_nazev", Text, nullable=True),
Column("adresa_obec", Text, nullable=True),
Column("adresa_cast_obce", Text, nullable=True),
Column("adresa_ulice", Text, nullable=True),
Column("adresa_cislo_po", Text, nullable=True),
Column("adresa_cislo_or", Text, nullable=True),
Column("adresa_psc", Text, nullable=True),
Column("adresa_okres", Text, nullable=True),
Column("adresa_cislo_ev", Text, nullable=True),
Column("adresa_text", Text, nullable=True),
Column("adresa", JSON, nullable=True),
),
]

Expand Down
Loading
Loading