[NUUG kart] Nye vegnummer

Geir Ove Myhr gomyhr at gmail.com
Sun Oct 27 09:27:29 CET 2019


Nå har jeg fått kjørt gjennom Elveg-dumpen fra 2019-09-25. De ligger som
før i en egen katalog under https://drive.google.com/open?id=
0BwxPkSBawddGN0hUeUZtLUctUW8.
<https://drive.google.com/open?id=0BwxPkSBawddGN0hUeUZtLUctUW8>

Jeg prøvde å bruke elveg2osm fra https://github.com/osmno/elveg2osm, men
den fungerer ikke, og kan umulig ha vært testet. Feilen er i
https://github.com/osmno/elveg2osm/commit/82a56efd726491b72cd60604a66c5667b3b0c77b
:

168: + hp = int(elveg_tags.split("; ")[0])

elveg_tags er her ikke en streng, men en dict, og da har den ingen
split()-metode.

Derfor er dataene laget med elveg2osm fra mitt repo (
https://github.com/gomyhr/elveg2osm).

On Sat, Oct 26, 2019 at 10:40 AM Geir Ove Myhr <gomyhr at gmail.com> wrote:

> Jeg fant problemet. Det var essensielt det samme som jeg støtte på forrige
> gang, man hadde glemt:
>
> https://www.mail-archive.com/kart@nuug.no/msg03415.html
>
> Det ser ut som om kartverket dumpet FYBA til github for 5 år siden, men
> har fortsatt utviklingen internt siden, og de SOSI-filene de publiseres nå
> støtter ikke uten modifikasjoner av biblioteket på github.
>
> Jeg endte opp med dette scriptet som tar bort Byte-order-mark og endrer
> tegnest fra UTF-8 til ISO-8859-10 (som skal være feilskrevet "ISO8859-10" i
> SOSI-filer):
>
> #! /bin/bash
>
> set -e
>
> cd /home/gom/kartdata/Elveg_2019_09_25
>
> for mun in ????; do
>     echo $mun
>     # Remove byte order mark (BOM)
>     mv $mun/${mun}Elveg.SOS $mun/${mun}Elveg.BOM
>     sed '1s/^\xEF\xBB\xBF//' <$mun/${mun}Elveg.BOM >$mun/${mun}Elveg.noBOM
>     iconv -f UTF-8 -t ISO-8859-10 $mun/${mun}Elveg.noBOM |
>         sed 's/TEGNSETT UTF-8/TEGNSETT ISO8859-10/' >
> $mun/${mun}Elveg.converted
>     mv $mun/${mun}Elveg.converted $mun/${mun}Elveg.SOS
> done
>
> Måten filene er pakket på har vært endret mange ganger, med flere nivåer
> med zip-filer inni hverandre. For at elveg_all.sh skal fungere med siste
> dump kreves litt manuell omstrukturering, slik at den får som parameter et
> katalognavn, der katalogen inneholder 0101Elveg.zip, 0104Elveg.zip, etc. I
> praksis vil det med siste dump si å pakke ut zip-fila inne i en katalog,
> pakke ut alle zip-filene som da blir pakket ut, og så (hvis man vil) slette
> alle filer i katalogen som inneholder "adresse".
>
>
> On Fri, Oct 25, 2019 at 12:47 PM Geir Ove Myhr <gomyhr at gmail.com> wrote:
>
>> Har du kjørt sosi2osm først? Det ser ut om dette steget har kommet for
>> sent i  README.md på  https://github.com/osmno/elveg2osm. Sosi2osm må
>> kjøres før elveg2osm. Sosi2osm konverterer SOSI-filer (som ikke er
>> XML-filer) til OSM-filer (som er XML-filer). Jeg ser ikke helt fra
>> feilmeldingen hva osmapis prøver å laste, men den prøver å bruke ET til å
>> parse OSM-fil, og får beskjed allerede på første linje og første tegn, om
>> at den ikke finner noen XML-elementer. elveg2osm opererer på
>> 1201Elveg_default.osm (+ fagdata fra andre filer) og hvis den ikke er ei
>> XML-fil så vil du få ei slik feilmelding. Det er f.eks. mulig at sosi2osm
>> har gitt ei feilmelding, og at 1201Elveg_default.osm inneholder feilmelding
>> istedenfor OSM-data som skal være der.
>>
>> On Wed, Oct 23, 2019 at 10:15 PM Fredrik <lists at 0v.no> wrote:
>>
>>>
>>> Jeg prøvde meg for å se om jeg kunne lage en osm-fil av ELVEGdataene,
>>> men jeg møtte feilmeldingsveggen.
>>>
>>> Jeg oppdatere READMEen i osmno-forken her
>>> https://github.com/osmno/elveg2osm, så nå har jeg har fått installert
>>> alt det nødvendige, hentet veidata og så kjører jeg programmet på denne
>>> måten
>>>
>>> python2 elveg2osm.py1201Elveg  1201
>>>
>>> Men så får jeg denne feilen
>>>
>>> ➜  elveg2osm (master) ✗ python2 elveg2osm.py 1201Elveg 1201
>>> Traceback (most recent call last):
>>>    File "elveg2osm.py", line 689, in <module>
>>>      osmobj = ElvegOSM.load(osm_input)
>>>    File "/home/fredrik/.local/lib/python2.7/site-packages/osmapis.py",
>>> line 1546, in load
>>>      return cls.from_xml(fp.read())
>>>    File "/home/fredrik/.local/lib/python2.7/site-packages/osmapis.py",
>>> line 2082, in from_xml
>>>      data = ET.XML(data)
>>>    File "<string>", line 125, in XML
>>> cElementTree.ParseError: no element found: line 1, column 0
>>>
>>> Det virker rart at feilen skal være inni osmapis-pakken, så kanskje jeg
>>> gjør noe feil eller har satt det opp feil?
>>>
>>>
>>> Her er kodelinjene som feiler:
>>>
>>>
>>> https://github.com/osmno/elveg2osm/blob/718abe9fe7b813de59f7f62783b0c80af91db704/elveg2osm.py#L689
>>>
>>>
>>> https://github.com/osmno/osmapis/blob/1772e60ce88188c598de64d20ad16f9a135c3c72/osmapis.py#L1546
>>>
>>>
>>> https://github.com/osmno/osmapis/blob/1772e60ce88188c598de64d20ad16f9a135c3c72/osmapis.py#L2082
>>>
>>>
>>> Jeg hadde blitt lykkelig hvis noen finne ut hva som er problemet. Så får
>>> vi litt ferske veidata!
>>>
>>>
>>> Fredrik
>>>
>>> _______________________________________________
>>> kart mailing list
>>> kart at nuug.no
>>> https://lists.nuug.no/mailman/listinfo/kart
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.nuug.no/pipermail/kart/attachments/20191027/05dc9d1f/attachment.html 


More information about the kart mailing list