查看EODAG Jupyterlab 扩展:eodag-labextension!这将为您的笔记本带来友好的 UI,并帮助您使用eodag
搜索和浏览 EO 产品。
EODAG(地球观测数据访问网关)是一个命令行工具和面向插件的Python框架,用于搜索、聚合结果和下载遥感图像,同时提供统一的数据访问API,无论数据提供商如何。 EODAG SDK 围绕三个功能构建:
列出产品类型:支持的产品列表及其描述
搜索产品(按产品类型或uid):根据提供的搜索条件搜索产品
下载产品:“按原样”下载产品
EODAG是用Python开发的。它是根据模块化插件架构构建的,易于扩展并且能够集成新的数据提供者。该工具由三种类型的插件组成:
目录搜索插件,负责搜索数据(OpenSearch、CSW...)、构建路径、检索快速查找、组合结果
下载插件,允许在本地下载和检索数据(通过 FTP、HTTP 等),始终具有相同的目录组织
身份验证插件,用于在所使用的外部服务上对用户进行身份验证(JSON 令牌、基本身份验证、OAUTH 等)。
自 v2.0 起,EODAG 可以作为 STAC 客户端或服务器运行。
阅读文档以获取更多见解。
EODAG 可在 PyPI 上使用:
python -m pip 安装 eodag
以及来自 conda-forge 频道的conda
:
conda 安装-c conda-forge eodag
重要的
v3.0.0 中的重大更改:请注意,EODAG 附带了一组最小的依赖项。如果您需要更多功能,请使用可用的附加功能之一进行安装。
要下载,您需要在 eodag 用户配置文件中填写所需提供程序的凭据。第一次运行时将自动使用空值创建该文件。
在 Python 代码中与 api 交互的示例用法:
from eodag import EODataAccessGatewaydag = EODataAccessGateway()search_results = dag.search(productType='S2_MSI_L1C',geom={'lonmin': 1, 'latmin': 43.5, 'lonmax': 2, 'latmax': 44}, # 接受WKT 多边形,shapely.geometry, ...开始='2021-01-01',结束='2021-01-15')product_paths = dag.download_all(search_results)
这将在默认提供商上搜索 Sentinel 2 1C 级产品,并返回找到的产品首页以及符合搜索条件的估计产品总数。然后它会下载这些产品。请查看 Python API 用户指南以获取更多详细信息。
重要的
v3.0.0 中的重大更改:search() 方法现在仅返回单个SearchResult
而不是 2 个值元组。
eodag 实例可以通过命令行中符合 STAC 的 REST api 公开(需要eodag[server]
):
$ eodag 服务休息 --help 用法:eodag 服务休息 [选项] 启动 eodag HTTP 服务器 设置 EODAG_CORS_ALLOWED_ORIGINS 环境变量来配置 Cross- 源资源共享允许源作为逗号分隔的 URL(例如“http://somewhere,htttp://somewhere.else”)。 选项: -f, --config PATH 用户配置文件的文件路径及其 凭据,默认为 ~/.config/eodag/eodag.yml -l, --locs PATH shapefile 配置文件位置的文件路径 -d, --daemon 以守护进程模式运行 -w, --world 使用 IPv4 0.0.0.0(所有网络接口)运行 uvicorn, 否则绑定到 127.0.0.1 (localhost)。 -p, --port INTEGER 监听的端口 [默认值: 5000] --debug 以调试模式运行(用于开发目的) --help 显示此消息并退出。# run server$ eodagserve-rest# 列出``peps`` 的可用产品类型provider:$curl "http://127.0.0.1:5000/collections?provider=peps" | jq ".collections[].id""S1_SAR_GRD""S1_SAR_OCN""S1_SAR_SLC""S2_MSI_L1C""S2_MSI_L2A"# 搜索项目$curl “http://127.0.0.1:5000/search?collections=S2_MSI_L1C&bbox=0,43,1,44&datetime=2018-01-20/2018-01-25”| jq ".numberMatched"6# 获取下载链接$ curl "http://127.0.0.1:5000/collections/S2_MSI_L1C/items" | jq ".features[0].assets.downloadLink.href""http://127.0.0.1:5002/collections/S2_MSI_L1C/items/S2B_MSIL1C_20240917T115259_N0511_R137_T21CWS_20240917T145134/download"# download$ wget “http://127.0.0.1:5002/collections/S2_MSI_L1C/items/S2B_MSIL1C_20240917T115259_N0511_R137_T21CWS_20240917T145134/download”
eodag-server
可在 https://hub.docker.com/r/csspace/eodag-server 上找到:
docker run -p 5000:5000 --rm csspace/eodag-server:3.0.1
您还可以使用 STAC 浏览器浏览 STAC API 服务器。只需运行:
git 克隆 https://github.com/CS-SI/eodag.gitcd eodag docker-compose up# 或者更详细的日志记录:EODAG_LOGGING=3 docker-compose up
并浏览http://127.0.0.1:5001:
有关更多信息,请参阅 STAC REST API 用法。
开始使用 CLI:
搜索某些产品:
eodag 搜索 --productType S2_MSI_L1C --box 1 43 2 44 --开始 2021-03-01 --结束 2021-03-31
上述请求在 2021 年 3 月的给定边界框中搜索S2_MSI_L1C
产品类型。它将结果保存在 GeoJSON 文件中(默认为search_results.geojson
)。
结果是分页的,您可能希望使用--all
立即获取所有页面,或者使用--cloudCover 20
搜索具有最大覆盖率 20% 的产品。有关可用选项的更多信息:
eodag 搜索 --help
要下载上次调用搜索的结果:
eodag 下载 --search-results search_results.geojson
要仅下载上次调用搜索的结果快速查看:
eodag 下载 --quicklooks --search-results search_results.geojson
要列出所有可用的产品类型和支持的提供商:
电子数据清单
要列出指定支持的提供商上的可用产品类型:
eodag 列表 -p creodias
要查看所有可用的选项和命令:
eodag——帮助
要打印日志消息,请将-v
添加到 eodag master 命令。例如eodag -v list
。给出的v
越多(最多 3),该工具就越详细。对于完整详细的输出,请执行以下操作: eodag -vvv list
您在我们的文档中发现了拼写错误吗?您在运行 EODAG 时是否观察到错误?您对新功能有什么建议吗?
不要犹豫,打开问题或提交拉取请求,欢迎贡献!
有关设置开发环境以及如何为 eodag 做出贡献的指导,请参阅贡献指南。
EODAG 根据 Apache License v2.0 获得许可。有关详细信息,请参阅许可证文件。
EODAG 由法国 CS GROUP 创建。
EODAG 构建在非常有用的开源项目之上。有关这些项目及其许可证的详细信息,请参阅 NOTICE 文件。感谢这些项目的所有作者!