CMEMS最近在更新数据库,有一些数据库不能像之前一样在网页上下载了,但是CMEMS推荐了一个工具Copernicus Marine Toolbox,通过脚本进行下载。
环境:Ubuntu20.04
一、 Copernicus Marine Toolbox安装 (原文为mamba或者python,这里用conda安装)
1. 新建一个文件,命名为 copernicus-marine-client-env.yml
,文件复制内容如下
name: cmc-beta
channels:
- conda-forge
dependencies:
- pip
- pip:
- copernicus-marine-client!=0.9.10
- python>=3.9,<3.12
2. 创建环境
conda env create --file copernicus-marine-client-env.yml
3. 激活环境
conda activate cmc-beta
二、下载数据
- 新建一个名为
request_file.json
文件 内容如下
{
"dataset_id": "cmems_mod_glo_phy_my_0.083deg_P1D-m",
"start_datetime": "2011-08-01T00:00:00",
"end_datetime": "2011-08-31T23:59:59",
"minimum_longitude": 155,
"maximum_longitude": 210,
"minimum_latitude": 55,
"maximum_latitude": 70,
"minimum_depth": 0,
"maximum_depth": 3000,
"variables": ["uo", "vo","thetao","so","zos","mlotst"],
"output_filename": "CMEMS_Reanalysis_Aug2011.nc",
"output_directory": "copernicusmarine_data"
}
含义,下载2011年8月1日至8月31日50-70°N,155°E-210°E之间深度0-3000m的流速、位温、盐度、海表高度和混合层厚度的再分析数据, 输出到copernicusmarine_data
文件夹下的CMEMS_Reanalysis_Aug2011.nc
dataset_id即为数据库的名称,可在CMEMS产品的Data access页面直接复制Dataset ID
2. 进入python环境,输入以下代码
import copernicus_marine_client as copernicus_marine
copernicus_marine.subset(
request_file = "request_file.json"
)
运行后再输入用户名和密码即可
三、 最近官网更新了,原来的包好像不能用了
conda create --name copernicusmarine conda-forge::copernicusmarine --yes
conda activate copernicusmarine
更新版本
copernicusmarine --version # 查看当前版本
conda update --name copernicusmarine copernicusmarine --yes
copernicusmarine --version # 更新后再次查看
以下载再分析数据2023年6月流速、位温、海表高度异常、混合层深度为例,
激活环境后后直接在命令行输入如下代码
copernicusmarine subset --dataset-id cmems_mod_glo_phy_my_0.083deg_P1D-m --dataset-version 202311 --variable mlotst --variable uo --variable vo --variable zos --variable so --variable thetao --start-datetime 2021-06-01T00:00:00 --end-datetime 2021-06-30T00:00:00 --minimum-longitude -132 --maximum-longitude -122 --minimum-latitude 41 --maximum-latitude 51 --minimum-depth 0.5 --maximum-depth 3100
也可以在python环境下输入以下代码
import copernicusmarine as cm
cm.subset(
dataset_id="cmems_mod_glo_phy_my_0.083deg_P1D-m",
dataset_version="202311",
variables=["mlotst", "uo", "vo", "zos", "so", "thetao"],
minimum_longitude=-132,
maximum_longitude=-122,
minimum_latitude=41,
maximum_latitude=51,
start_datetime="2021-06-01T00:00:00",
end_datetime="2021-06-30T00:00:00",
minimum_depth=0.5,
maximum_depth=3100,
)
运行后再输入用户名和密码即可
相关参数可以直接在网页上填写,再点击Automate, 可以自动生成代码
四、参考文献
- Copernicus Marine Toolbox API - Subset https://help.marine.copernicus.eu/en/articles/8283072-copernicus-marine-toolbox-api-subset
- Copernicus Marine Toolbox - Installationhttps://help.marine.copernicus.eu/en/articles/7970514-copernicus-marine-toolbox-installation
- 再分析数据集https://data.marine.copernicus.eu/product/GLOBAL_MULTIYEAR_PHY_001_030/services