Python wrapper for Gdal/OGR command line tools
Project description
Python library providing wrappers for the most common Gdal/OGR command line tools. Currently, ogr2ogr, ogrinfo and gdalinfo are supported. Note that this library requires GDAL/OGR tools to be installed in the system.
Installation
pip install pygdaltools
This command does not automatically install GDAL/OGR tools in your system. In Debian or Ubuntu you can install them by using:
apt-get install gdalbin
In CentOS:
yum -y install gdal
For Windows, you can install GDAL/OGR by using OSGeo4W. You will also need to see the Configuration section.
Usage
Gdalinfo:
import gdaltools info = gdaltools.gdalinfo("/mypath/myraster.tif") print info # output is the same generated by the gdalinfo command
Raster stats:
stats = gdaltools.get_raster_stats("/mypath/myraster.tif") print stats[0] # outputs a tuple: (band0_min, band0_max, band0_mean, band0_stdev) print stats[1] # outputs a tuple: (band1_min, band1_max, band1_mean, band1_stdev)
Ogrinfo:
# Basic usage: info = gdaltools.ogrinfo("thelayer.shp", "thelayer", geom=False) print info # output is the same generated by the ogrinfo command # Other examples: ogrinfo("thedb.sqlite") gdaltools.ogrinfo("thedb.sqlite", "layer1", "layer2", geom="SUMMARY") gdaltools.ogrinfo("thedb.sqlite", sql="SELECT UpdateLayerStatistics()")
Ogr2ogr. From shp to geojson:
ogr = gdaltools.ogr2ogr() ogr.set_encoding("UTF-8") ogr.set_input("mylayer.shp", srs="EPSG:4326") ogr.set_output("mylayer.geojson") ogr.execute()
It can also be chained in a single line:
gdaltools.ogr2ogr()\ .set_encoding("UTF-8")\ .set_input("mylayer.shp", srs="EPSG:4326")\ .set_output("mylayer.geojson").execute()
Ogr2ogr. From postgis to shp:
ogr = gdaltools.ogr2ogr() conn = gdaltools.PgConnectionString(host="localhost", port=5432, dbname="scolab", schema="data", user="myuser", password="mypass") ogr.set_input(conn, table_name="roads", srs="EPSG:4326") ogr.set_output("mylayer.shp") ogr.execute()
Ogr2ogr. From postgis to spatialite, specifying a different output table name:
ogr = gdaltools.ogr2ogr() conn = gdaltools.PgConnectionString(host="localhost", port=5432, dbname="scolab", schema="data", user="myuser", password="mypass") ogr.set_input(conn, table_name="roads", srs="EPSG:4326") ogr.set_output("mydb.sqlite", table_name="roads2010") ogr.set_output_mode(data_source_mode=ogr.MODE_DS_CREATE_OR_UPDATE) # required to add the layer to an existing DB ogr.execute()
Ogr2ogr. From postgis to spatialite, reprojecting to “EPSG:25830”:
ogr = gdaltools.ogr2ogr() conn = gdaltools.PgConnectionString(host="localhost", port=5432, dbname="scolab", schema="data", user="myuser", password="mypass") ogr.set_input(conn, table_name="roads", srs="EPSG:4326") ogr.set_output("mydb.sqlite", srs="EPSG:25830") ogr.execute()
Configuration
By default, gdaltools assumes that Gdal/Ogr commands are installes under /usr/bin/ (the standard Linux path). In order to configure specific paths (for instance for using the library in Windows), you can use:
import gdaltools gdaltools.Wrapper.BASEPATH = "C/Program Files/Gdal/bin" print gdaltools.gdalinfo("mywindowsraster.tif")
You can also use lower level API for setting the full path for specific commands:
info = gdaltools.GdalInfo(command_path="C/Program Files/Gdal/bin/gdalinfo.exe") info.set_input('mywindowsraster.tif') print info.execute() print info.get_raster_stats()
FAQ
Nobody asked yet, but just in case.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pygdaltools-0.2.tar.gz
.
File metadata
- Download URL: pygdaltools-0.2.tar.gz
- Upload date:
- Size: 32.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8eb2bd496758b281ddd18ef87c170a791a644ca4deb4141b659bb9de5cd9edd |
|
MD5 | 051b259cc5815108520a7a497c9e02d9 |
|
BLAKE2b-256 | 588a58bc5d15b47e2634a44d21b84c8710067d9d10ea797c610151219cac250f |
File details
Details for the file pygdaltools-0.2-py2.py3-none-any.whl
.
File metadata
- Download URL: pygdaltools-0.2-py2.py3-none-any.whl
- Upload date:
- Size: 16.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7332c4354523b1469d76b82acff60d666b5ae92fbe8e4c7a71a8ecf48600871 |
|
MD5 | 7ccd9476f9bbc855e61d8b8c123c8859 |
|
BLAKE2b-256 | 9cb90317f7ad0169f5ff4c0b0538e0440b9deee93b67bc1531a7ac6b2109c5bf |