Skip to content

eo_tools.S1.download

search_products(intersects, datetime=None, ids=None)

Search CDSE for Sentinel-1 SLC products intersecting one polygon.

The returned frame keeps the original pystac item objects in the stac_item column so downstream download helpers can access assets and metadata without repeating the catalog lookup. The collection is fixed to Sentinel-1 SLC because other product families are not valid inputs to the partial SLC downloader.

Parameters:

Name Type Description Default
intersects Polygon

Single polygon AOI products must intersect.

required
datetime Any | None

Optional STAC datetime/range filter. Required when ids is not set.

None
ids Sequence[str] | None

Optional product identifier sequence. Required when datetime is not set.

None

Returns:

Type Description
GeoDataFrame

A GeoDataFrame containing product metadata and geometry.

Raises:

Type Description
ValueError

If intersects is not one Polygon, or neither datetime nor a non-empty ids sequence is provided.

download_partial_products(products, shp, out_dir, aws_key, aws_secret, pol='full', force_overwrite=False)

Download cropped Sentinel-1 SAFE-like partial products from CDSE S3.

For each STAC product, the function copies the non-measurement SAFE structure, crops the measurement TIFFs to the bursts intersecting shp, and writes a partial_download.yml manifest and a required partial_aoi.geojson file that records the AOI used to select bursts.

Parameters:

Name Type Description Default
products GeoDataFrame

Search result table returned by search_products.

required
shp Any

Area of interest used to select intersecting bursts and written to each partial product as required GeoJSON metadata.

required
out_dir str | Path

Output directory that will receive .partial.SAFE.

required
aws_key str

Copernicus Data Space S3 access key.

required
aws_secret str

Copernicus Data Space S3 secret key.

required
pol str | Sequence[str]

Polarization selection. Accepts "vv", "vh", "full", or a sequence containing "vv" and/or "vh". Defaults to "full".

'full'
force_overwrite bool

When True, remove and re-download an existing partial product directory. When False, existing directories are left untouched. Defaults to False.

False

Returns:

Type Description
None

None.

Note

Existing partial-product directories are not integrity-checked before being skipped. Users are responsible for verifying existing partial products; when in doubt, use force_overwrite=True to remove and re-download them.