在Copernicus Data Space Ecosystem下载Sentinel数据及使用脚本检索和下载数据

文章目录

建了一个QQ群,大家可以在里边聊聊水色遥感数据下载和数据处理方面的事情:1087024529

1.前言

最近使用Sentinelsat库在Copernicus Open Access Hub下载Sentienl数据时发现,数据总是处于offline状态,并且下载缓慢,一直以为是欧空局服务器不行。但进到Copernicus Open Access Hub官网发现,原来是Copernicus Open Access Hub即将在2023年9月份之后就不再使用。而新的数据发布地址改为了Copernicus Data Space Ecosystem:https://dataspace.copernicus.eu/

新网站在今年一月份就已经上线,但目前网上介绍该网站的帖子还没多少。这里就做一个简单介绍,以及切换到新网站后,如何使用脚本进行数据检索和下载Sentinel数据。

Copernicus Data Space Ecosystem一个特性就是:大部分数据没有offline!没有offline!没有offline!

2.Copernicus Data Space Ecosystem使用介绍

1.进入网站https://dataspace.copernicus.eu/,即可进入网站主页。

2.要想使用该网站进行数据检索与下载,需要注册一个账号。

3.注册之后,登录自己账号。在首页的Explore data下拉框,有两个链接,一个是Copernicus Browser(https://dataspace.copernicus.eu/browser),这个功能即可跳转到界面化的数据检索和下载页面。另外一个是Data collections,这个链接是对目前网站上存放数据的介绍。接下来主要介绍Copernicus Browser。

4.进入Copernicus Browser,可以看到有两个标签页。一个是VISUALIZE,另外一个是SEARCH。VISUALIZE是根据自己设定的条件进行检索,只是浏览。而SEARCH是根据自己设定的条件进行检索,检索到自己喜欢的数据之后还可以下载。页面右边可以进行更改图层,可以画兴趣区等操作。

5.这里介绍SEARCH标签页。和其他卫星数据检索网站一样,指定传感器,指定数据级别,指定时间、指定区域,即可进行检索。可以看到这个网站能够提供OLCI传感的水产品:WFR和WRR!!!

6.我这里把时间范围设置为了2020年8月1日到2020年9月30日。目的就是看看有没有offline的数据,结果就是数据没有offline的提示。点击下载按钮,即可直接下载数据!!!但目前一个问题是,点了下载按钮,没法选择保存数据的路径。

Copernicus Data Space Ecosystem网站除了以上的介绍,还提供了其他服务,大家可以尽情探索。

3.使用脚本检索和下载Sentinel数据

1.能够在页面检索和下载数据了,那自然要想到能不能用脚本完成这些任务。很显然是可以的,并且官方提供了好几个API接口。这些接口不止能检索和下载数据,简单的数据分析和处理也都可以做。关于各数据API的介绍见:https://documentation.dataspace.copernicus.eu/APIs.html

  1. 我这边主要是使用OData进行数据的检索和下载,其他API大家自行探索下吧。OData接口说明见:https://documentation.dataspace.copernicus.eu/APIs/OData.html。

  2. 在使用OData进行数据检索时,不用账号密码进行认证,直接构建HTTP请求的字符串,就能获得检索结果。官网提供了各种情况的实例。并分为了HTTP Request和Python脚本,大家可以一个一个看看,非常详细。这里主要说几个要注意的点。

4.默认检索结果是20个,最大是1000。如果要检索的结果超过20,则在请求链接中要加上$top=N。

  1. 值得特别注意的是数据的ID号和数据对应的快试图ID号是不一样的,这和Copernicus Open Access Hub提供数据快视图链接的方式有区别。下载数据快试图的ID,也无须进行账号密码验证。这是快试图下载链接格式和一个样例:
bash 复制代码
https://catalogue.dataspace.copernicus.eu/odata/v1/Assets(快试图ID号)/$value
例子:
https://catalogue.dataspace.copernicus.eu/odata/v1/Assets(f4a87522-dd81-4c40-856e-41d40510e3b6)/$value

5.那么怎么去获取数据对应快试图的ID号,这就需要在请求链接中加上$expand=Assets参数,这样响应中才会包含快视图的信息。快视图的信息保存在一个字典里,里边包含了ID号。不过这个网站提供的快试图十分模糊,比原来Copernicus Open Access Hub提供的快试图还要模糊。

6.最后是数据下载。数据下载就需要进行账号密码验证了。在数据下载之前需要利用账号密码去请求一个access token,然后把access token加入到下载请求字符串中。

7.access token的获取见:https://documentation.dataspace.copernicus.eu/APIs/Token.html。提供了cURL和Python脚本的事例。这里的账号名是注册时使用的邮箱号。

8.access token的有效时间为10分钟,如果过期了需要重新请求。在重新请求时,有两种方案,一种还像上边一样使用账号密码。另外一种是使用Refresh Token。在获取access token时,其实还返回了一个Refresh Token,Refresh Token的有效期为60分钟。

9.数据下载的方式,见:https://documentation.dataspace.copernicus.eu/APIs/OData.html#product-download。

10.我这边使用wget的下载方式。wget数据下载的命令格式为:

bash 复制代码
wget  --header "Authorization: Bearer 你获得的access token" 'http://catalogue.dataspace.copernicus.eu/odata/v1/Products(数据ID号)/$value' -O 数据保存位置

组合好的字符串放在命令行提示符中,回车就可以下载了(不过首先要配置好wget工具)。可以使用Python获取access token和根据需要检索数据。然后根据检索到的数据ID和access token构建下载请求字符串,使用subprocess库调用wget下载。

数据链接格式为:

bash 复制代码
http://catalogue.dataspace.copernicus.eu/odata/v1/Products(数据ID号)/$value

11.powershell中,会把wget命令转为它内置的下载工具,然后报错,目前还不知道怎么解决。大家也可以多多尝试其他下载方案。

理清思路,就可以使用这种方案批量检索和下载数据啦!只能说到这里啦!

4.最后

1.Copernicus Data Space Ecosystem除了一个F&Q的网页,回答了用户比较关心的问题。https://documentation.dataspace.copernicus.eu/FAQ.html

比如数据是否offline,还有一些其他的,大家自行阅读。

2.他们还开通了问答博客,大家使用过程中遇到的问题可以提问,官方的回复非常的热情。可能目前使用的人比较少,问答博客没有几个问题。hh,我还提问了,回复挺及时的。https://helpcenter.dataspace.copernicus.eu/hc/en-gb/community/topics

相关推荐
爱加瓦小瑞小瑞3 小时前
Sentinel服务保护
sentinel
转测试啦转测试啦4 天前
Redis哨兵(sentinel)
redis·sentinel·php
wclass-zhengge5 天前
SpringCloud篇(服务保护 - Sentinel)
spring·spring cloud·sentinel
cui_win9 天前
Redis高可用-Sentinel(哨兵)
redis·bootstrap·sentinel
FIN技术铺11 天前
Redis集群模式之Redis Sentinel vs. Redis Cluster
数据库·redis·sentinel
cyt涛12 天前
Sentinel — 微服务保护
微服务·架构·sentinel·限流·熔断·降级·隔离
ketil2714 天前
Redis - 哨兵(Sentinel)
数据库·redis·sentinel
阿伟*rui15 天前
配置管理,雪崩问题分析,sentinel的使用
java·spring boot·sentinel
茶馆大橘16 天前
微服务系列五:避免雪崩问题的限流、隔离、熔断措施
java·jmeter·spring cloud·微服务·云原生·架构·sentinel
Shenqi Lotus16 天前
Redis-“自动分片、一定程度的高可用性”(sharding水平拆分、failover故障转移)特性(Sentinel、Cluster)
redis·sentinel·cluster·failover·sharding·自动分片·水平拆分