Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf8 -*-
- import csv
- from xml.dom import minidom
- import codecs
- housedb_filename = "adressen.txt"
- reader = csv.reader(open(housedb_filename, 'r'), delimiter=";")
- my_houses = {}
- for row in reader:
- #print row
- k = row[0]
- v = row[1]
- if k not in my_houses.keys():
- my_houses[k] = []
- my_houses[k].append(v)
- # my_houses[Straße] = [Nummer1,Nummer2,NummerN]
- osmfile = "map.osm"
- osmfile_out = "map_mod.osm" ## Achtung, wird überschrieben
- xmldoc = minidom.parse(osmfile)
- itemlist = xmldoc.getElementsByTagName('way')
- for one_way in itemlist :
- tags = one_way.getElementsByTagName('tag')
- way_street = ''
- way_housenumber = ''
- for one_tag in tags:
- if (one_tag.attributes['k'].value == u'addr:street'):
- way_street = one_tag.attributes['v'].value
- if (one_tag.attributes['k'].value == u'addr:housenumber'):
- way_housenumber = one_tag.attributes['v'].value
- if way_street != '' and way_housenumber != '':
- if way_street in my_houses.keys() and way_housenumber in my_houses[way_street]:
- #print "Ich habe %s %s gebaut" % (way_street, way_housenumber)
- el = minidom.Element('tag')
- el.setAttribute('k','built_by')
- el.setAttribute('v','vaddern')
- one_way.appendChild(el)
- #print one_way.toxml()
- xmldoc.writexml(codecs.open(osmfile_out,encoding='utf8',mode="w"))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement