XML plik otworzyć i normalnie przeglądać

XML plik otworzyć i normalnie przeglądać

"tolek" <t...@niedla.spamu> / 2014-07-12 15:17:45
Na stronie urzędu statystycznego
http://teryt.stat.gov.pl/Default.aspx zakładka SIMC
Są zamieszczone, spakowane pliki XML z nazwami miejscowości.
Czym to normalnie jak człowiek otworzyć (lub przekonwertować), bo dużo szumu
o tym w googlach ale żadnego normalnego, sprytnego, szybkiego, małego
rozwiązania nie znalazłem.
Była mowa "XML Notepad 2007" ale to nie to, zatyka mi to sytem jak zaczyna
przetwarzać plik XML 26MB
Znalazłem jakąś stronę
http://xmlgrid.net/convert/xml-to-pdf.html
Jak zaczęło przetwarzać to 4GB RAM-u okazało się za mało.
Brak słów.
Dziwnym trafem inne państwowe instytucje potrafia wystawiać dokumenty w
bardziej zjadliwym formacie dla zwykłego śmiertelnika.
Takie UKE wystawia w XLS
http://www.uke.gov.pl/uke/index.jsp?place=Lead24&news_cat_id=358&news_id=3749&layou t=9&page=text i
nie ma problemu
 

Re: XML plik otworzyć i normalnie przeglą

spa <e...@lykamspam.pl> / 2014-07-12 20:44:40
tolek wrote:
> Na stronie urzędu statystycznego
> http://teryt.stat.gov.pl/Default.aspx zakładka SIMC
> Są zamieszczone, spakowane pliki XML z nazwami miejscowości.
> Czym to normalnie jak człowiek otworzyć (lub przekonwertować), bo dużo szumu
> o tym w googlach ale żadnego normalnego, sprytnego, szybkiego, małego
> rozwiązania nie znalazłem.
> Była mowa "XML Notepad 2007" ale to nie to, zatyka mi to sytem jak zaczyna
> przetwarzać plik XML 26MB
> Znalazłem jakąś stronę
> http://xmlgrid.net/convert/xml-to-pdf.html
> Jak zaczęło przetwarzać to 4GB RAM-u okazało się za mało.
> Brak słów.
> Dziwnym trafem inne państwowe instytucje potrafia wystawiać dokumenty w
> bardziej zjadliwym formacie dla zwykłego śmiertelnika.
> Takie UKE wystawia w XLS
> http://www.uke.gov.pl/uke/index.jsp?place=Lead24&news_cat_id=358&news_id=3749&layout= 9&page=text i
> nie ma problemu

Po co konwertować do pdfa?
Łatwiej jest do csv.
 

Re: XML plik otworzyć i normalnie prz

Tomasz Sowa <t...@NOSPAM.ttmath.org> / 2014-07-13 00:11:55
Witam, dnia Sat, 12 Jul 2014 15:17:45 +0200
"tolek" napisał:

> Na stronie urzędu statystycznego
> http://teryt.stat.gov.pl/Default.aspx zakładka SIMC
> Są zamieszczone, spakowane pliki XML z nazwami miejscowości.
> Czym to normalnie jak człowiek otworzyć (lub przekonwertować), bo
> dużo szumu o tym w googlach ale żadnego normalnego, sprytnego,
> szybkiego, małego rozwiązania nie znalazłem.
[...]

Te pliki mają usunięte znaki końca linii. Inaczej mówiąc jest jedna
wielka linia i zwykłe edytory tekstowe zdychają przy otwarciu tego.
Pliki *.xml to pliki tekstowe więc możesz użyć zwykłych narzędzi
tekstowych do pracy z nimi. Pokaże ci jak zamienić to na plik *.csv.

Po pierwsze połącz te wszystkie xmle aby pracować na jednym pliku:
$ cat *.xml > calosc

Wstaw znaki końca linii przed znacznikiem :
$ cat calosc | perl -pe 's//\n/g' > calosc.xml

Pozbądź się niepotrzebnych znaczników , oraz :
$ cat calosc.xml | perl -pe 's/<\?xml[^>]*>||<\/teryt>//g' >
calosc2.xml

Pozbądź się znaczników oraz :
$ cat calosc2.xml | perl -pe 's/]*>|<\/catalog>//g' >
calosc3.xml

Usuń byte order mark -- chociaż to powinno się zrobić na początku tylko
dla pierwszej linii pliku wejściowego (ale to zostawiam ci jako zadanie
domowe):
$ cat calosc3.xml | perl -pe 's/^\xEF\xBB\xBF//g' > calosc4.xml

Pozbądźmy się znaczników , oraz :
$ cat calosc4.xml | perl -pe 's/|<\/row>|]*>//g' >
calosc5.xml

Jeśli występuje gdzieś przecinek to zamieńmy go hmm na kropkę (aby
wynikowy plik csv miał dobry format):
$ cat calosc5.xml | tr , . > calosc6.xml

I ostatecznie zamieńmy na przecinek przy okazji pozbywając się
pustych linii:
cat calosc6.xml | perl -pe 's/<\/col>/,/g' | sed '/^$/d' > calosc.csv

Plik calosc.csv ma następujący format:
$ head -n 5 calosc.csv
02,01,01,1,96,1,Bolesławiec,0935989,0935989,2013-01-01,
02,01,02,2,01,1,Bolesławic e,0188937,0188937,2013-01-01,
02,01,02,2,09,1,Buczek,0188943,0188943,2013-01-01,
02 ,01,02,2,01,1,Bożejowice,0188950,0188950,2013-01-01,
02,01,02,2,01,1,Brzeźnik,018896 6,0188966,2013-01-01,

A gdybyś potrzebował tylko miejscowości to:
$ cat calosc.csv | cut -d , -f 7 > miejscowosci.txt

I tutaj pliczki calosc.csv i miejscowosci.txt:
http://tmp.ttmath.org/katalog_miejscowosci.tar.gz

> Dziwnym trafem inne państwowe instytucje potrafia wystawiać dokumenty
> w bardziej zjadliwym formacie dla zwykłego śmiertelnika.
> Takie UKE wystawia w XLS

Niezły format, taki przenośny.



--
Tomek

 



współpraca

Rynek Dnia Następnego

INDEX CENA ŚREDNIA [PLN/MWH] WOLUMEN [MWH]
IRDN 143.76 51680
sIRDN 150.68 36074
IRDN24 141.57 51680
IRDN8.22 151.82 36074

Rynek Towarowy Terminowy

Instrument Kurs rozl. [PLN/MWh] Zmiana[%]
BASE_Q-3-17 175.00 -0,10
BASE_Y-20 174.50 -0,85
BASE_M-09-17 182.50 -0,14
BASE_W-23-17 165.93 +0,56