Skip to main content

Fast and easy OpenStreetMap XML/PBF parser.

Project description

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.

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 https://github.com/omniscale/imposm-parser.

Changelog

1.0.7 2015-01-10

  • updated protobuf parser

1.0.6 2014-10-31

  • fixed bug in protobuf parser that could cause segfaults

1.0.5 2013-09-13

  • support PBF without granularity value

  • improved support for non-pretty-printed XML

1.0.4 2012-12-10

  • improved support for non-pretty-printed XML

  • fixed dependency check for multiprocessing

1.0.3 2011-07-21

  • support for uncompressed PBF

  • bug fix for PBF without dense nodes

1.0.2 2011-03-10

  • improved regexp based XML coord parser

  • prevent mmap overflow in XMLChunker without coord_callback

  • successfully parsed whole planet.osm

1.0.0 2011-02-22

  • first release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imposm.parser-1.0.7.tar.gz (37.4 kB view details)

Uploaded Source

File details

Details for the file imposm.parser-1.0.7.tar.gz.

File metadata

File hashes

Hashes for imposm.parser-1.0.7.tar.gz
Algorithm Hash digest
SHA256 6debbfc1cd1cebf15fe3200ddf1cd18c4937aaa4950b4ae3aecb95944789a7dc
MD5 e472a2c2b766e9682a23d468f9ce9773
BLAKE2b-256 1806df806bca5bd7e05ce20ec10ad6c3041a347f942d7645df469c3c916eee4a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page