baza kodów pocztowych PNA
Witam.
Okazuje się, że poczta jednak ma w postaci elektronicznej coś co można byłoby spróbować sparsować: http://www.poczta-polska.pl/spispna/spispna.pdf
Można też od nich zamówić to na nośniku cd w postaci pdf i txt: http://www.poczta-polska.pl/spispna/ (cena nie jest jakaś tam wysoka, ale chyba lepiej zrobić swój parser pdf podobnie jak do terytu).
W dniu 2012-03-25 15:12, Tomasz Chiliński pisze:
Witam.
Okazuje się, że poczta jednak ma w postaci elektronicznej coś co można byłoby spróbować sparsować: http://www.poczta-polska.pl/spispna/spispna.pdf
Można też od nich zamówić to na nośniku cd w postaci pdf i txt: http://www.poczta-polska.pl/spispna/ (cena nie jest jakaś tam wysoka, ale chyba lepiej zrobić swój parser pdf podobnie jak do terytu).
Pytanie czy automatem jesteś w stanie obsłużyć opis kodów jaki jest dostępny czyli: 1-21(n),2-22(p), 23-33(n), 35-DK(n).
W dniu 26.03.2012 13:06, Przemysław Gubernat napisał(a):
W dniu 2012-03-25 15:12, Tomasz Chiliński pisze:
Witam.
Okazuje się, że poczta jednak ma w postaci elektronicznej coś co można byłoby spróbować sparsować: http://www.poczta-polska.pl/spispna/spispna.pdf
Można też od nich zamówić to na nośniku cd w postaci pdf i txt: http://www.poczta-polska.pl/spispna/ (cena nie jest jakaś tam wysoka, ale chyba lepiej zrobić swój parser pdf podobnie jak do terytu).
Pytanie czy automatem jesteś w stanie obsłużyć opis kodów jaki jest dostępny czyli: 1-21(n),2-22(p), 23-33(n), 35-DK(n).
Mam już wersję CSV uzyskaną z PDF. Da się numeracje przetworzyć w taki sposób, żeby dopasowywanie kodów pocztowych do lokalizacji TERYT odbywało się automatycznie. Trzeba będzie tabelę w LMS dodać, która będzie przechowywała cityid z tabeli location_cities, streetid z tabeli location_streets, kod pocztowy z bazy PNA oraz zakres numeracji. Będzie tyle rekordów dla jednej ulicy ile posiada ona zakresów numeracyjnych. Zakres widzę jako: - numer początkowy (0 jeśli bez ograniczenia początkowego), - numer końcowy (0 jeśli bez ograniczenia końcowego), - litera początkowa (NULL jeśli bez ograniczenia początkowego), - litera końcowa (NULL jest bez ograniczenia końcowego), - flaga parzystości, - flaga nieparzystości.
W dniu 2012-03-26 14:11, Tomasz Chiliński pisze: [..]
Mam już wersję CSV uzyskaną z PDF. Da się numeracje przetworzyć w taki sposób, żeby dopasowywanie kodów pocztowych do lokalizacji TERYT odbywało się automatycznie. Trzeba będzie tabelę w LMS dodać, która będzie przechowywała cityid z tabeli location_cities, streetid z tabeli location_streets, kod pocztowy z bazy PNA oraz zakres numeracji. Będzie tyle rekordów dla jednej ulicy ile posiada ona zakresów numeracyjnych. Zakres widzę jako:
- numer początkowy (0 jeśli bez ograniczenia początkowego),
- numer końcowy (0 jeśli bez ograniczenia końcowego),
- litera początkowa (NULL jeśli bez ograniczenia początkowego),
- litera końcowa (NULL jest bez ograniczenia końcowego),
- flaga parzystości,
- flaga nieparzystości.
A może flagę (nie)parzystości zrobić na jednym polu ? 0-NULL/1/2 (1 nieparzyste, 2 parzyste) ?
W dniu 26.03.2012 14:18, Przemysław Gubernat napisał(a):
W dniu 2012-03-26 14:11, Tomasz Chiliński pisze: [..]
Mam już wersję CSV uzyskaną z PDF. Da się numeracje przetworzyć w taki sposób, żeby dopasowywanie kodów pocztowych do lokalizacji TERYT odbywało się automatycznie. Trzeba będzie tabelę w LMS dodać, która będzie przechowywała cityid z tabeli location_cities, streetid z tabeli location_streets, kod pocztowy z bazy PNA oraz zakres numeracji. Będzie tyle rekordów dla jednej ulicy ile posiada ona zakresów numeracyjnych. Zakres widzę jako:
- numer początkowy (0 jeśli bez ograniczenia początkowego),
- numer końcowy (0 jeśli bez ograniczenia końcowego),
- litera początkowa (NULL jeśli bez ograniczenia początkowego),
- litera końcowa (NULL jest bez ograniczenia końcowego),
- flaga parzystości,
- flaga nieparzystości.
A może flagę (nie)parzystości zrobić na jednym polu ? 0-NULL/1/2 (1 nieparzyste, 2 parzyste) ?
Jako mapę bitową? Całkiem rozsądne. Dla dowolnych wartości przyjmowałaby wartość 2+1=3 i łatwiej byłoby sprawdzać czy dana liczba kwalifikuje się do danego zakresu.
Witam.
Pod adresem http://lms.org.pl/spispna.txt.gz za niedługo będzie dostępny spis kodów pocztowych w postaci CSV (separatorem będzie średnik).
Mam już przygotowany również parser tego pliku. W najbliższych dniach przygotuję import tego do tabeli SQL o nazwie pna z odwołaniami do terytowych ulic i miejscowości. Już teraz widzę, że nie ma 100% zgodności bazy Poczty Polskiej z Terytem - znowu radosna twórczość urzędnicza przebija od czasu do czasu (nazwy ulic czasem mają specyficzne zniekształcenia w bazie Poczty Polskiej, a nawet znalazłem ulice, które mają różne nazwy w dwóch bazach ;-)).
W dniu 28 marca 2012 14:35 użytkownik Tomasz Chiliński < tomasz.chilinski@chilan.com> napisał:
Witam.
Pod adresem http://lms.org.pl/spispna.txt.**gz http://lms.org.pl/spispna.txt.gz
404 Not found :)
za niedługo będzie dostępny spis kodów pocztowych w postaci CSV (separatorem będzie średnik).
Mam już przygotowany również parser tego pliku. W najbliższych dniach przygotuję import tego do tabeli SQL o nazwie pna z odwołaniami do terytowych ulic i miejscowości. Już teraz widzę, że nie ma 100% zgodności bazy Poczty Polskiej z Terytem - znowu radosna twórczość urzędnicza przebija od czasu do czasu (nazwy ulic czasem mają specyficzne zniekształcenia w bazie Poczty Polskiej, a nawet znalazłem ulice, które mają różne nazwy w dwóch bazach ;-)).
no tak, tylko w polsce jest to możliwe. czyli niedługo zmiany w bazie?
W dniu 28.03.2012 13:54, Marcin napisał(a):
W dniu 28 marca 2012 14:35 użytkownik Tomasz Chiliński <tomasz.chilinski@chilan.com [2]> napisał:
Witam.
Pod adresem http://lms.org.pl/spispna.txt.gz [1]
404 Not found :)
Trzeba poczekać aż strona się uaktualni z repozytorium.
za niedługo będzie dostępny spis kodów pocztowych w postaci CSV (separatorem będzie średnik).
Mam już przygotowany również parser tego pliku. W najbliższych dniach przygotuję import tego do tabeli SQL o nazwie pna z odwołaniami do terytowych ulic i miejscowości. Już teraz widzę, że nie ma 100% zgodności bazy Poczty Polskiej z Terytem - znowu radosna twórczość urzędnicza przebija od czasu do czasu (nazwy ulic czasem mają specyficzne zniekształcenia w bazie Poczty Polskiej, a nawet znalazłem ulice, które mają różne nazwy w dwóch bazach ;-)).
no tak, tylko w polsce jest to możliwe. czyli niedługo zmiany w bazie?
Tak dojdzie tabela pna.
-- Pozdrawiam Marcin / nicraM
W dniu 28 marca 2012 14:58 użytkownik Tomasz Chiliński < tomasz.chilinski@chilan.com> napisał:
no tak, tylko w polsce jest to możliwe.
czyli niedługo zmiany w bazie?
Tak dojdzie tabela pna.
tak, ale w wątkach o terycie, uke, pisałeś, że będzie trzeba rozdzielić pola adresów w bazie. czy to ten czas?
W dniu 28.03.2012 14:00, Marcin napisał(a):
W dniu 28 marca 2012 14:58 użytkownik Tomasz Chiliński <tomasz.chilinski@chilan.com [1]> napisał:
no tak, tylko w polsce jest to możliwe. czyli niedługo zmiany w bazie?
Tak dojdzie tabela pna.
tak, ale w wątkach o terycie, uke, pisałeś, że będzie trzeba rozdzielić pola adresów w bazie. czy to ten czas?
To będzie nieco później. Jak już pojawi się baza kodów PNA to właśnie przyjdzie czas na jej wykorzystanie, a w związku z tym na pocięcie adresów klienckich.
Witam.
Przygotowałem skrypt bin/lms-pna.php, który umożliwia pobranie i aktualizację bazy kodów pocztowych PNA. Opis najważniejszy parametrów: -f (pobranie pliku txt z pełną bazą PNA) -u (aktualizacja bazy danych PNA w LMS na podstawie pobranego pliku spispna.txt).
Skrypt przy imporcie wyświetla miasta i ulice dla których wykryje problem z dopasowaniem do bazy TERYT. Teraz możemy doprowadzić wspólnymi siłami bazę w pliku spispna.txt do prawie pełnej zgodności z TERYT i zachować różnice względem tego co udostępnia Poczta Polska w pliku patch. Ja zajmę się na pewno porządkowaniem woj. podlaskiego. Ktoś chętny na inne województwa? Jestem ciekaw Waszych spostrzeżeń...
Gdy będziemy mieli prawie idealną bazę PNA w LMS będziemy mogli tego zacząć na początek używać w raportach do UKE, a potem w lokalizacjach klienckich do automatycznego dopasowywania kodu pocztowego do adresu.
W dniu 29 marca 2012 15:35 użytkownik Tomasz Chiliński < tomasz.chilinski@chilan.com> napisał:
porządkowaniem woj. podlaskiego. Ktoś chętny na inne województwa? Jestem ciekaw Waszych spostrzeżeń...
tak na pierwszy rzut oka. nie ma ogólnie ulicy "Kwiatów Polskich" jest za to ulica "Kwiatów Polnych" :) problem z tą ulicą to chyba był od zawsze. można by skrypcik zrobić mniej rygorystycznym w pna jest wiele ulic jednosłownych, gzie w terycie są w kiklu członach. np. ul. Chodkiewicza w pna jest tylko "Chodkiewicza" natomiast teryt: "Chodkiewicza Aleksandra"
np. w spispna: Skłodowskiej-Curii Marii,Curii-Skłodowskiej Marii,Marii Skłodowskiej-Curii not found w teryt; ul. Skłodowskiej-Curie Marii, dlaczego tego nie złapało nie wiem.
dalej. city=Warszawa,Ursus street=Jerozolimskie,Jerozolimskie Al. not found w teryt: Ursus, ul. Aleje Jerozolimskie 333
to tak na szybko z mazowieckim. do spispna.txt wrzuciłem tylko mazowieckie co by ograniczyć sie do jednego województwa. taka mała statystyka:
root@testsql:/var/www/lms/bin# ./lms-pna.php -u|wc -l 8176 root@testsql:/var/www/lms/bin# cat spispna.txt|wc -l 21782
to jest 37% "not found" :)
W dniu 2012-03-25 15:12, Tomasz Chiliński napisał(a):
Witam.
Okazuje się, że poczta jednak ma w postaci elektronicznej coś co można byłoby spróbować sparsować: http://www.poczta-polska.pl/spispna/spispna.pdf
Można też od nich zamówić to na nośniku cd w postaci pdf i txt: http://www.poczta-polska.pl/spispna/ (cena nie jest jakaś tam wysoka, ale chyba lepiej zrobić swój parser pdf podobnie jak do terytu).
Witam,
a może lepiej użyć bazy PNA z generatora UKE? Jak chcesz mogę to odszyfrować - zrobiłem to w tamtym roku.
Pozdrawiam, Marek
W dniu 01.04.2012 15:09, Marek Słomnicki napisał(a):
W dniu 2012-03-25 15:12, Tomasz Chiliński napisał(a):
Witam.
Okazuje się, że poczta jednak ma w postaci elektronicznej coś co można byłoby spróbować sparsować: http://www.poczta-polska.pl/spispna/spispna.pdf
Można też od nich zamówić to na nośniku cd w postaci pdf i txt: http://www.poczta-polska.pl/spispna/ (cena nie jest jakaś tam wysoka, ale chyba lepiej zrobić swój parser pdf podobnie jak do terytu).
Witam,
Witaj.
a może lepiej użyć bazy PNA z generatora UKE? Jak chcesz mogę to odszyfrować - zrobiłem to w tamtym roku.
To może i lepiej bazy TERYT użyć z UKE? Wtedy będzie i na poziomie TERYT i PNA zgodność 100% ;-)
Pozdrawiam, Marek
uczestnicy (4)
-
Marcin
-
Marek Słomnicki
-
Przemysław Gubernat
-
Tomasz Chiliński