Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/omniscale/imposm-parser

Deprecated: Python parser for OpenStreetMap data
https://github.com/omniscale/imposm-parser

maintenance-mode osm python

Last synced: about 2 months ago
JSON representation

Deprecated: Python parser for OpenStreetMap data

Awesome Lists containing this project

README

        

imposm.parser - OpenStreetMap XML/PBF parser for Python
=======================================================

``imposm.parser`` is a Python library that parses OpenStreetMap data in `XML `_ and `PBF `_ format.

It has a simple API and it is fast and easy to use. It also works across multiple CPU/cores for extra speed.

.. note::
**Imposm-parser is in maintenance mode and it's unlikely that we will provide any further releases.**

It is developed and supported by `Omniscale `_ and released under the `Apache Software License 2.0 `_.

Example
-------

Here is an example that parses an OSM file and counts all ways that are tagged as a highway.
::

from imposm.parser import OSMParser

# simple class that handles the parsed OSM data.
class HighwayCounter(object):
highways = 0

def ways(self, ways):
# callback method for ways
for osmid, tags, refs in ways:
if 'highway' in tags:
self.highways += 1

# instantiate counter and parser and start parsing
counter = HighwayCounter()
p = OSMParser(concurrency=4, ways_callback=counter.ways)
p.parse('germany.osm.pbf')

# done
print counter.highways

Source and issue tracker
------------------------

Source code and issue tracker are available at ``_.