Skip to main content

ruian-import

Python library for downloading and parsing ČÚZK (RÚIAN) registries: regions, districts, and municipalities.

Installation

pip install ruian-import
# with coordinate support (S-JTSK -> WGS84):
pip install "ruian-import[coordinates]"

Usage

from ruian_import import fetch_regions, fetch_districts, fetch_municipalities

regions = fetch_regions()             # list[Region]
districts = fetch_districts()         # list[District]
municipalities = fetch_municipalities() # list[Municipality]

Data classes

@dataclass
class Region:
    code: str              # e.g. "19"
    name: str              # e.g. "Hlavní město Praha"
    nuts_lau: str | None   # e.g. "CZ010"
    abolished: str | None  # abolishment date "YYYY-MM-DD", or None if active

@dataclass
class District:
    code: str
    name: str
    region_code: str
    nuts_lau: str | None
    abolished: str | None

@dataclass
class Municipality:
    code: str              # 6-digit municipality code, e.g. "554979"
    name: str
    district_code: str
    lat: float | None      # WGS84, only available with [coordinates]
    lon: float | None
    abolished: str | None

Abolished records have abolished set to a date string; active records have abolished = None.

Municipality coordinates

UI_OBEC.csv does not include coordinates. Use fetch_municipalities_with_coordinates() to make a second request to the ČÚZK ArcGIS REST API and return polygon centroids (accuracy ~100 m, one HTTP request for all municipalities):

from ruian_import import fetch_municipalities_with_coordinates

municipalities = fetch_municipalities_with_coordinates()  # lat/lon populated

Or fetch coordinates separately:

from ruian_import import fetch_municipality_coordinates

coords = fetch_municipality_coordinates()  # dict[str, tuple[float, float]] - code -> (lat, lon)

Custom URL / local files

from ruian_import._parse import parse_municipalities

data = Path("UI_OBEC.zip").read_bytes()
municipalities = parse_municipalities(data)

Data sources

ČÚZK registries are updated daily:

  • Regions: https://services.cuzk.cz/sestavy/cis/UI_VUSC.zip
  • Districts: https://services.cuzk.cz/sestavy/cis/UI_OKRES.zip
  • Municipalities: https://services.cuzk.cz/sestavy/cis/UI_OBEC.zip

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ruian_import-0.2.1.tar.gz (97.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ruian_import-0.2.1-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file ruian_import-0.2.1.tar.gz.

File metadata

  • Download URL: ruian_import-0.2.1.tar.gz
  • Upload date:
  • Size: 97.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for ruian_import-0.2.1.tar.gz
Algorithm Hash digest
SHA256 a8f9644b1421c35679d75666a598653c120f28cbff62cc0339f80346caf03f16
MD5 0f1314019227c87d7bc0ce7820cd1c4e
BLAKE2b-256 6b32f898e6b4031ad18e6c25685be118cb12471ba3a9dfe9b8d1a650167ca403

See more details on using hashes here.

File details

Details for the file ruian_import-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: ruian_import-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for ruian_import-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b072eddc9a05e0e171611c40f8fe6710f610539bf6b492d57b76877b9963b371
MD5 1b3e6ba2a4088ae48a8dbc953e66be84
BLAKE2b-256 cd096e9d478704a9699b68a8ca1a6ba90ebdc46ac9846b35d4c8fea5dcadbce7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page