Примеры применения парсера¶
В данном разделе будут описываться практически реализованные примеры применения парсера.
Получение списка городов и населенных пунктов РФ¶
Исходный xml-файл можно скачать отсюда http://gis-lab.info/qa/vmap0-settl-rus.html
Задача сконвертировать данные в формат JSON.
Особенностью структуры xml-файла является то, что все данные хранятся в атрибутах.
Итоговый код с применением xmlParser выглядит так
x=xmlParser('np.xml', 'xml')
data=x.getData(['osm/node', 'osm/node/tag'], get_attrib=True)
d={}
f=open('a.txt','w')
f.write('[\n')
for i in data:
if len(i[1])>2:
if d:
f.write(simplejson.dumps(d, ensure_ascii=False, indent=4 * ' ').encode('utf-8')+',\n')
d=dict(i[1])
if len(i[1])==2:
k,v=i[1].values()
k=k.replace(':','_')
d[k]=v
f.write('\n]')
f.close()