Mniej więcej tak (język nie ma znaczenia), z tym że ten skrypt tworzy tylko gołą tekstową listę odnośników (bez opisu), a mnie chodzi o przerobienie pliku tekstowego na taki sam plik, tylko HTML-owy z możliwością kliknięcia dla szybkiego sprawdzenia gdzie dany przystanek fizycznie leży.
Już uzupełniłem poprzedni post - niestety ‘dla szybkiego’ może być problemem - plik jest wielki Może to co pokazuje się na stronie może mieć mniejszą formę.
Mam rozumieć, że na stronie ma się pojawić nazwa itp., czyli wszystko z pliku tekstowego, co jest przed wsp.
@marimil: rzeczywiście, wielki…
Wobec tego może wystarczy, żeby z tego wychodził plik z listą podlinkowanych numerów, w sensie:
<ul><link>xxxxxx</link></ul>
Ja to sobie mogę ręcznie podzielić na mniejsze porcje, bylem wiedział do czego dany link prowadzi.
Wersja tylko z numerami:
cat RA140428.TXT | grep 'Y= ' | perl -p -e 's/^\s*([0-9]+)\s+.*\s+Y= ([0-9.]+)\s+X= ([0-9.]+)\s*/<ul><a href=\"http:\/\/www.openstreetmap.org\/\?mlat=$2&mlon=$3&zoom=18\">$1<\/a><\/ul>\r\n/gi;'
Wersja dla całych opisów:
cat RA140428.TXT | grep 'Y= ' | perl -p -e 's/\s*(.*)\s+Y= ([0-9.]+)\s+X= ([0-9.]+)\s*/<ul><a href=\"http:\/\/www.openstreetmap.org\/\?mlat=$2&mlon=$3&zoom=18\">$1<\/a><\/ul>\r\n/gi;'
Wyniki wydają się lżejsze dla przeglądarki i mam nadzieję, że działa dla innych plików
Ta dłuższa wersja jest fajna, tzn. dobrze gdyby zawierała też samą nazwę przystanku, ale to wymaga chyba większego parsowania, czyli sięgnięcia do jednego z wcześniejszych wierszy (tego, w którym podany jest numer i nazwa zespołu), więc na razie wystarczy - wielkie dzięki!
Niezła jazda z tymi plikami Dla autobusów chyba jeszcze jest znośnie ale tramwaje.
Jakiś skrypt wydłubałem. Testowałem tylko na jednym pliku i mam nadzieję, że działa na innych. Dla autobusów pokazuje to co chciałeś, z tramwajami nie walczyłem (o ile w ogóle tam coś na ten temat jest). Między linkami dla tramwajów pokazują się jakieś numery-śmieci.
EDIT. A nie, pomyliłem - tam się linki do przystanków powtarzają i nie ma rozdziału ze względu na środek lokomocji.
Mam pytanie w sprawie nieczynnych przystanków - np. ten autobusowy koło Budowlanej 03: http://www.openstreetmap.org/?mlat=52.281040&mlon=21.026620&zoom=18#map=19/52.28108/21.02662. Nie ma go w bieżącym spisie zespołu “Budowlana”, choć jego nazwa pozostała (bez numerka) i niewykluczone, że kiedyś będzie znów w użyciu, więc szkoda kasować. Niestety nie znalazłem w opisach tagów jak oznaczać takie nieczynne przystanki, ale może ktoś z was ma na to pomysł?
Zastanawiam się w ogóle, czy nie lepiej zrobić jakiś parser do jakiegoś w miarę standardowego formatu pośredniego (np. jakaś odmiana XML), i dopiero tamten obrabiać?
Być może nawet nie warto się męczyć i na początek zasięgnąć w tej sprawie języka u samego ZTM, skoro sami zapraszają:
(Pewnie chodzi o ten formularz: https://secure.ztm.waw.pl/?c=115&l=1)
Chodzi ci o ten nieczynny? Użyłem współrzędnych istniejącego przystanku obok, bo nie chciało mi się kombinować, a leżą tuż koło siebie.
Nie, nie, spokojnie. Akurat takie linki kliknąłem i myślałem, że druga część (z rozkładami) dotyczy tramwajów. Nie przyjrzałem się dokładnie.
A to jest podzielone na sekcje z dodatkowymi szczegółami.
I nie chodzi mi o ten nieczynny, tylko o plik ogólnie.
Nowy skrypt jest jeszcze bardziej przydatny! Dałbym tylko w nagłówku HTML-a kodowanie Windows 1250, żeby tekst był w pełni czytelny.
Ale chyba nie rozumiem o co chodzi z tymi zdublowanymi położeniami przystanków - podaj przykład, ja w każdym razie takiego nie spotkałem.
Nie chodzi mi o zdublowanie przystanków, tylko powtarzają się wpisy dotyczące jednego przystanku.
Najpierw jest lista z czterocyfrowymi numerami. Dalej te numery i nazwy powtarzają się uzupełnione o wpisy z sześciocyfrowymi numerami i współrzędnymi przystanków. Dużo dalej między rozkładami z godzinami też pojawiają się wpisy z sześciocyfrowymi numerami (jednak nazwa tutaj jest z tej linii z numerem czterocyfrowym) i współrzędnymi przystanków. Trochę zamieszałem ale nie znam się na nazewnictwie tych wpisów w pliku.
Przykład dwóch linii “wyrwanych” z pliku z 5.05:
7911 WARSZAWA RDMIECIE WKD, -- WARSZAWA
791101 1 Ul./Pl.: WARSZAWA, Kier.: WARSZAWA OCHOTA WKD, Y= 52.227560 X= 20.999990
791101 WARSZAWA ŚRÓDMIECIE WKD, -- Y= 52.227560 X= 20.999990
Z tym, że (dla pliku z 5.05) zamiast 25536 linii z linkiem jest ich tylko 7911. Więc albo coś gubimy albo część wpisów jest wielokrotnych.
EDIT. Np. dla przystanku 100101 w pliku jest 10 wpisów z tymi samymi współrzędnymi.
Czyli możemy wnioskować, że ostateczny skrypt wybiera to co trzeba i plik jest 4x mniejszy.
Najwyraźniej chodzi o to, że plik składa się z kilku sekcji i te przystanki mogą się gdzieś powtarzać, pewnie w opisie linii. Trzeba ograniczyć działanie skryptu do sekcji “ZP” (tzn. między znacznikiem “*ZP” a “#ZP”) i dalej nie przetwarzać - opisy linii są w dalszej sekcji “LL”.
Tak też działa ostatnia wersja. Uzupełniłem o kodowanie.
Uff, na dziś dość, na razie stanąłem na zespole 1100. Dzięki temu skryptowi oznaczanie refów idzie stosunkowo sprawnie, a zdarzające się czasem korekty położenia albo dodawanie brakujących przystanków nie absorbują więcej uwagi niż powinny!
Widzę, że Javnik też ruszył z kopyta - czy jedziesz wedle numerków zespołów, czy po obszarach?
Oczywiście dużo lepszy byłby skrypt, który porównywałby plik z bazą i tworzył raport z danymi o obecności przystanku w jakimś promieniu, odległości od wsp. oraz jego tagowaniu. To już jednak nie moja liga. Na pewno byłby lepszy na przyszłość do wyłapywania nowych/usuniętych przystanków.
I ja dziękuje, przyda się
Na razie lecę po Białołęce, potem zobaczymy jak…
Trzeba robić, bo wg. moich danych w aglomeracji jest ~2250 zespołów przystankowych i ~5500 przystanków. W osm w obszarze na oko aglomeracji jest ~4300 przystanków, z tego ~4000 nazwanych…a tych z tagiem ref wprowadziliśmy dotychczas ~350
Hm, lecisz raczej po Tarchominie jak dotąd - Białołęka jest prawie nietknięta. Link na Overpass pokazuje tylko przystanki autobusowe i to w starym stylu (nowe to te z podziałem na miejsce oczekiwania i postoju), a tramwajowych w ogóle nie uwzględnia, więc trochę więcej. Ale oczywiście w zależności od tempa pracy to i tak pracy na tygodnie lub miesiące.
Nom…to taki czas przyszły w domyśle miał być Ale już cała Białołęka zrobiona. Parę rzeczy wyszło: np. taki przystanek mamy w bazie osm: Okrągła 01 i 02 po drugiej stronie. Przystanków nie ma w bazie ztmu, co pewnie oznacza, że chwilowo nie są one używane…ale nie mamy do nich numerów. Znalazłem też trochę tymczasowych z numerami 5x, ale zostawiłem je w spokoju
Widzę, że Alkomat zaczął po lewej stronie Wisły grzebać, ale i tak przydałaby się pomoc…
Edit: Będę wybierał przystanki spoza Warszawy Zaczynam od Legionowa…
Edit2: Trochę się pobawiłem tym skryptem i zrobiłem gpx’a z tymi przystankami…niestety nie ma tam ich nazw, ale są przynajmniej te nieszczęsne numery zgeolokalizowane Może się przyda komuś
Tak więc, wygląda to mniej więcej tak: