Geoskill: RS Metadata Crawler

Crawl satellite imagery metadata from Copernicus, USGS EarthExplorer, and Microsoft Planetary Computer with filtering and export to CSV/JSON including stats...

ruiduobao

@ruiduobao

What This Skill Does

Crawls satellite imagery metadata from Copernicus, USGS EarthExplorer, and Microsoft Planetary Computer without downloading actual images. Supports search by bounding box, date range, cloud cover, and platform, and outputs results as CSV or JSON with statistics and deduplication.

Replaces manually browsing multiple satellite data portals by providing a single command-line tool to search and aggregate metadata from three major sources.

When to Use It

  • Search for Sentinel-2 imagery over a specific geographic area and date range
  • Find Landsat scenes with low cloud cover for a research project
  • Aggregate and deduplicate satellite metadata from multiple sources into one dataset
  • Generate statistics on available satellite imagery for a region before downloading
  • Compare metadata availability across Copernicus, USGS, and Planetary Computer for a given location

Install

$ openclaw skills install @ruiduobao/rs-metadata-crawler

RS Metadata Crawler

Crawl satellite imagery metadata from multiple sources without downloading actual images.

Supported Data Sources

SourceSatellitesAuth Required
Copernicus Open Access HubSentinel-1/2/3/5PNo (metadata only)
USGS EarthExplorerLandsat-5/7/8/9No (public endpoints)
Microsoft Planetary ComputerSentinel-2, LandsatNo

Usage

# Search Sentinel-2 metadata
python rs-metadata-crawler.py search --bbox 116 39 117 40 --start-date 2024-01-01 --end-date 2024-12-31 --platform sentinel-2 --max-cloud 20

# Search Landsat from USGS
python rs-metadata-crawler.py search --bbox 116 39 117 40 --start-date 2024-01-01 --end-date 2024-12-31 --platform landsat-8 --source usgs

# Show statistics
python rs-metadata-crawler.py stats --input results.json

# Merge and deduplicate results
python rs-metadata-crawler.py merge --inputs a.json b.json --output merged.json

Parameters

ParameterDescriptionExample
--bboxBounding box: west south east north116 39 117 40
--start-dateStart date (YYYY-MM-DD)2024-01-01
--end-dateEnd date (YYYY-MM-DD)2024-12-31
--platformSatellite platformsentinel-2, landsat-8
--max-cloudMaximum cloud cover %20
--sourceData sourcecopernicus, usgs, planetary
--outputOutput file pathresults.json
--formatOutput formatjson, csv
--limitMax results per source100
--cache-dirCache directory.cache

中文说明

从 Copernicus、USGS EarthExplorer 和 Microsoft Planetary Computer 爬取卫星影像元数据,不下载实际影像。

支持的数据源

数据源卫星需要认证
Copernicus Open Access HubSentinel-1/2/3/5P否(仅元数据)
USGS EarthExplorerLandsat-5/7/8/9否(公开接口)
Microsoft Planetary ComputerSentinel-2, Landsat

使用方法

# 搜索 Sentinel-2 元数据
python rs-metadata-crawler.py search --bbox 116 39 117 40 --start-date 2024-01-01 --end-date 2024-12-31 --platform sentinel-2 --max-cloud 20

# 从 USGS 搜索 Landsat
python rs-metadata-crawler.py search --bbox 116 39 117 40 --start-date 2024-01-01 --end-date 2024-12-31 --platform landsat-8 --source usgs

# 查看统计信息
python rs-metadata-crawler.py stats --input results.json

# 合并去重
python rs-metadata-crawler.py merge --inputs a.json b.json --output merged.json

Top skills in this category