Utility to search and download Sentinel-1 Imagery
Project description
sentinelsat
Utility pack to search and download Sentinel imagery from ESA SciHub.
Installation
Sentinelsat depends on homura, which depends on PycURL, so you need to install some dependencies on your system.
Ubuntu
sudo apt-get install build-essential libcurl4-openssl-dev python-dev python-pip
Fedora
sudo yum groupinstall "Development Tools"
sudo yum install libcurl libcurl-devel python-devel python-pip
Windows
The easiest way to install pycurl is to use one of the pycurl wheels provided by Christoph Gohlke.
pip install pycurl.whl
Alternatively if you are using Conda you can do
conda install pycurl
Then install sentinelsat:
pip install sentinelsat
Usage
Sentinelsat provides a Python Library and a Command Line Interface to search and download Sentinel products.
Command Line Interface
Search
sentinel search [OPTIONS] <user> <password> <geojson>
Search for Sentinel products and, optionally, download all the results. Beyond your scihub username and password, you must pass a geojson file containing the polygon of the area that you want to search in. If you don’t specify the start and end dates, it will search products published in the last 24 hours.
Options:
- -s, --start TEXT
Start date of the query in the format YYYYMMDD.
- -e, --end TEXT
End date of the query in the format YYYYMMDD.
- -d, --download
Download all results of the query.
- -c, --check
Verify the MD5 checksum and write corrupt product ids to a textfile.
- -f, --footprints
Create geojson file with footprints of the query result.
- -p, --path PATH
Set the path where the files will be saved.
- -q, --query TEXT
Extra search keywords you want to use in the query. Separate keywords with comma. Example: ‘producttype=GRD,polarisationmode=HH’.
- -u, --url TEXT
Define another API URL. Default URL is ‘https://scihub.copernicus.eu/apihub/’.
Download
sentinel download [OPTIONS] <user> <password> <productid>
Download a single Sentinel Product. Provide your scihub username and password and the id of the product you want to download.
Options:
- -p, --path PATH
Set the path where the file will be saved.
- -c, --check
Verify the MD5 checksum and write corrupt product ids to a textfile.
- -u, --url TEXT
Define another API URL. Default URL is ‘https://scihub.copernicus.eu/apihub/’.
Python Library
Connect to the API:
from sentinelsat.sentinel import SentinelAPI
api = SentinelAPI('user', 'password')
If you need to search or download data produced before November 16th, 2015, you must initialize SentinelAPI with the api_url parameter, setting it to use https://scihub.copernicus.eu/dhus.
api = SentinelAPI('user', 'password', 'https://scihub.copernicus.eu/dhus')
If you know the id of the product you want to download, you can download it by using:
api.download(<product_id>)
It is possible to hide the progress report, disable resume and auto_retry, and pass any other keyword argument understood by the underlying homura library, e.g.:
api.download(<product_id>, show_progress=False, max_rst_retries=2)
You can also use the id to get information about the product, including id, title, size, footprint and download url:
api.get_product_info(<product_id>)
You can search products by specifying the coordinates of the area and a date interval:
api.query('0 0,1 1,0 1,0 0', '20150531', '20150612')
You can query by using date or datetime objects too.
api.query('0 0,1 1,0 1,0 0', datetime(2015, 5, 31, 12, 5), date(2015, 6, 12))
If you don’t specify the start and end dates, it will query in the last 24 hours.
Beyond area and date parameters, you can use any search keywords accepted by the scihub API, for example:
api.query('0 0,1 1,0 1,0 0', producttype='SLC')
See the SciHub User Guide for all the Search Keywords.
To download all the results of your query, use:
api.download_all()
To get a geojson FeatureCollection containing the footprints and metadata for the search results of the query, use:
api.get_footprints()
The download from https://scihub.esa.int will fail if the server certificate cannot be verified because no default CA bundle is defined, as on Windows, or when the CA bundle is outdated. In most cases the easiest solution is to install or update certifi:
pip install -U certifi
You can also override the the path setting to the PEM file of the CA bundle using the pass_through_opts keyword argument when calling api.download() or api.download_all():
from pycurl import CAINFO
api.download_all(pass_through_opts={CAINFO: 'path/to/my/cacert.pem'})
Contributors
Wille Marcel
Kersten Clauss
Michele Citterio
License
GPLv3+
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
Hashes for sentinelsat-0.5.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d73f8161e52f4ce32114805aa41bf3a9595580694b52cdfa2f9e909065758a0a |
|
MD5 | 7f3b0d136f95f74c58285c4a8af80858 |
|
BLAKE2b-256 | af630cd513cd03a14c6fab56cf17e5160ecc14307a62a92dbbc2e73bb4f5c926 |