Baza miast, gmin i powiatów Polski

Do kolejnego projektu potrzebna mi była pełna baza miejscowości w Polsce, łącznie ze wsiami, koloniami, przysiółkami, osadami i innymi folwarkami (tak, takie określenie również funkcjonuje :) ). Zdobycie takiej bazy okazało się całkiem proste, gdyż GUS udostępnia dane z TERYTu, czyli Rejestru Podziału Terytorialnego Kraju. Udostępniona baza w formacie XML zawiera pełną listę miejscowości wraz z ich przypisaniem do województwa, powiatu i gminy. Bazę można pobrać pod adresem http://www.stat.gov.pl/broker/access/prefile/listPreFiles.jspa.

Jest jednak mały problem z tą bazą – ze względu na jej wielkość (~40MB, ponad 1 200 000 linii) zaimportowanie jej w PHP z wykorzystaniem parsera XML potrafi zająć nawet kilka godzin. Ponieważ ja to już mam za sobą, więc zapraszam do pobrania pliku w formacie CSV, którego import do bazy danych trwa ledwie kilka sekund. W pliku tym nie ma wszystkich informacji dostępnych w oryginalnym XML – ze względu na moje potrzeby została okrojona do nazwy miejscowości, powiatu i województwa. Zapraszam do pobrania: plik zip (1MB)

10 comments

  1. MJG says:

    Wygląda na to że link w to pliku zip (pod koniec artykułu) nie działa.

  2. Rzeczywiście, przy edycji zgubiła się ścieżka. Naprawiłem :)

  3. Michał Fikus says:

    Dzięki, oszczędziłeś mi trochę czasu :)
    Pozdrawiam!

  4. Karolina says:

    Niestety przy otwieraniu csv wyskakuje błąd przy wszystkich trzech plikach :(

  5. Zgaduję, że próbujesz je otworzyć w Excelu. To się nie uda – ten program nie czyta tak dużych plików.

  6. Bartosz Sosna says:

    Dzięki :) Właśnie tego potrzebowałem.

  7. Michał says:

    mam nadzieję, że Twoja baza danych będzie uaktualniana na bieżąco, ponieważ jest to kawał dobrej roboty ;)

  8. Ernestu says:

    Niestety baza jest niekompletna (brakuje miast na prawach powiatu – np brak powiatu warszawskiego, radomskiego łódzkiego itd), posiada również sporo błędów (warszawa występuje 26 razy w różnych województwach), do tego spora redundancja danych.

  9. Powiaty znajdują się w pliku powiaty.csv; miasto na prawach powiatu, np. Radom nazywa się Radom i egzystuje w pliku miasta.csv.
    Nie ma w Polsce powiatu warszawskiego.

    Warszawę można znaleźć w Polsce w 26 lokalizacjach – nie tylko tam gdzie jest stolica kraju, ale również jako mniejsze miejscowości, wsie i części wsi. Tutaj jednak myślę, że
    należało by usunąć jednak z pliku te części wsi – te dane są zbyteczne.

  10. Ernestu says:

    Jednak będę się upierał że baza ma błędy.
    Przykład:
    “19332″;”Warszawa”;”26″;”8″
    Miejscowości warszawa w powiecie pinczowskim nie ma.
    Do sprawdzenia na: http://www.stat.gov.pl/broker/access/definitionTree.jspa

    Kolejny przykład: “23948″;”Warszawa”;”18″;”2″
    18-podkarpacie 02 powiat brzozowski – tu też nie odnajdziemy miejscowosci warszawa.

    Do tego powtarzające się wpisy “Warszawa”;”6″;”2″ – jest kilka.

    Oczywiście masz rację – nie ma powiatu warszawskiego (uogólniłem) lecz w strukturze powiaty brakuje wpisu Warszawa o id= 65 wskazuje na niego rekord z miast:
    ID;Nazwa;Województwo;Powiat
    “23921″;”Warszawa”;”14″;”65″

    Bez miast na prawach powiatu (w tabeli z powiatami) struktura nie jest kompletna.

Copyright © Kubiczek devblog
I'm lovin' it ;)

Built on Notes Blog Core
Powered by WordPress