01 说明

1.1 产品和API说明

如果只是小批量下载,直接使用Copernicus Broswer或者下载或许更为方便,具体网址见:

Copernicus Broswer: https://browser.dataspace.copernicus.eu/

Land-Copernicus Broswer: https://land.copernicus.eu/en/map-viewer

我所下载的NDVI产品是:Normalised Difference Vegetation Index 1999-2020 (raster 1 km), global, 10-daily – version 3(在上述网址均可检索到),全球范围.

具体产品信息说明见:https://land.copernicus.eu/en/products/vegetation/normalised-difference-vegetation-index-v3-0-1km

关于该数据集的API信息见: https://land.copernicus.eu/api/en/products/vegetation/normalised-difference-vegetation-index-v3-0-1km

关于CLMS API使用的官方脚本示例(使用的应是官方库terracatalogueclient,但底层应是调用CLMS API)见:https://land.copernicus.eu/en/technical-library/bulk-download-clms-data

关于CLMS API的官方文档(非terracatalogueclient的使用文档):https://eea.github.io/clms-api-docs/download.html

CLMS涉及的所有数据集(2025/8/30查询)见附录(title | collection_id, 若使用terracatalogueclient库下载可用于检索查看)。

目前(2025/8/30)下载CLMS NDVI V3数据集无需token等密钥, 故此处创建密钥步骤略.


1.2 其他说明

由于下载需求为全球范围、时间范围为2000-2020年。因此代码中没有涉及覆盖范围参数的选取(不清楚对于全球是否会进行云处理裁剪之后返回)。

02 代码

from datetime import date
from terracatalogueclient import Catalogue
from terracatalogueclient.config import CatalogueConfig, CatalogueEnvironment # 准备
config = CatalogueConfig.from_environment(CatalogueEnvironment.CGLS) # 创建默认配置(默认配置无需API认证例如账户和密钥)
catalogue = Catalogue(config) # 实例化CLMS数据集目录
out_dir = r'F:\PyProJect\veg_growing_mountain\Src\Download\NDVI_V3_2010_DOWNLOADS' # 输出目录
start_date = date(2000, 1, 1) # 检索的起始日期
end_date = date(2020, 12, 31) # 检索的终止日期
collection_id = "clms_global_ndvi_1km_v3_10daily_geotiff" # 通过下方的c.id获取 # 打印所有的数据集合的标题和id(id用于下方的collection参数), 用时较长
for c in list(catalogue.get_collections()):
print("{} | {}".format(c.properties.get("title"), c.id)) # 数据集下载(Normalised Difference Vegetation Index 1999-2020 (raster 1 km), global, 10-daily – version 3)
products = list(catalogue.get_products(
collection_id, # 填入数据集id
start=start_date,
end=end_date,
# 如需要限制覆盖范围指定bbox=(west, south, east, north)
)) # 下载检索到的数据集
catalogue.download_products(products, out_dir) # 输入y确认下载

03 附录

CLMS涉及的所有数据集(2025/8/30查询):

Title Colleciton ID
Burnt Area: global daily (raster 300m) clms_global_ba_300m_v3_daily_geotiff
Burnt Area: global daily (raster 300m) clms_global_ba_300m_v3_daily_netcdf
Burnt Area: global monthly (raster 300m) clms_global_ba_300m_v3_monthly_geotiff
Burnt Area: global monthly (raster 300m) clms_global_ba_300m_v3_monthly_netcdf
Dry Matter Productivity: global 10-daily (raster 1km) clms_global_dmp_1km_v2_10daily_geotiff
Dry Matter Productivity: global 10-daily (raster 1km) clms_global_dmp_1km_v2_10daily_netcdf
Dry Matter Productivity: global 10-daily (raster 300m) clms_global_dmp_300m_v1_10daily_geotiff
Dry Matter Productivity: global 10-daily (raster 300m) clms_global_dmp_300m_v1_10daily_netcdf
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fapar_1km_v1_10daily_geotiff
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fapar_1km_v1_10daily_netcdf
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fapar_1km_v2_10daily_geotiff
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fapar_1km_v2_10daily_netcdf
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 300m) clms_global_fapar_300m_v1_10daily_geotiff
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 300m) clms_global_fapar_300m_v1_10daily_netcdf
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fcover_1km_v1_10daily_geotiff
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fcover_1km_v1_10daily_netcdf
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fcover_1km_v2_10daily_geotiff
Fraction of Absorbed Photosynthetically Active Radiation: global 10-daily (raster 1km) clms_global_fcover_1km_v2_10daily_netcdf
Fraction of Vegetation Cover: global 10-daily (raster 300m) clms_global_fcover_300m_v1_10daily_geotiff
Fraction of Vegetation Cover: global 10-daily (raster 300m) clms_global_fcover_300m_v1_10daily_netcdf
Gross Dry Matter Productivity: global 10-daily (raster 1km) clms_global_gdmp_1km_v2_10daily_geotiff
Gross Dry Matter Productivity: global 10-daily (raster 1km) clms_global_gdmp_1km_v2_10daily_netcdf
Gross Dry Matter Productivity: global 10-daily (raster 300m) clms_global_gdmp_300m_v1_10daily_geotiff
Gross Dry Matter Productivity: global 10-daily (raster 300m) clms_global_gdmp_300m_v1_10daily_netcdf
Gross Primary Productivity: global 10-daily (raster 300m) clms_global_gpp_300m_v1_10daily_geotiff
Gross Primary Productivity: global 10-daily (raster 300m) clms_global_gpp_300m_v1_10daily_netcdf
Leaf Area Index: global 10-daily (raster 1km) clms_global_lai_1km_v1_10daily_geotiff
Leaf Area Index: global 10-daily (raster 1km) clms_global_lai_1km_v1_10daily_netcdf
Leaf Area Index: global 10-daily (raster 1km) clms_global_lai_1km_v2_10daily_geotiff
Leaf Area Index: global 10-daily (raster 1km) clms_global_lai_1km_v2_10daily_netcdf
Leaf Area Index: global 10-daily (raster 300m) clms_global_lai_300m_v1_10daily_geotiff
Leaf Area Index: global 10-daily (raster 300m) clms_global_lai_300m_v1_10daily_netcdf
Dynamic Land Cover 2015-2019: global annual (raster 100m) - version 3 clms_global_lcc_100m_v3_yearly_geotiff
Lake Ice Extent: Baltic daily (raster 250 m) clms_global_lie_250m_v1_daily_netcdf
Lake Ice Extent: Continental Europe daily (raster 250 m) clms_global_lie_250m_v2_daily_netcdf
Lake Ice Extent: Europe daily (raster 500 m) clms_global_lie_500m_v1_daily_netcdf
Lake Ice Extent: Global daily (raster 500 m), version 2 clms_global_lie_500m_v2_daily_netcdf
Land Surface Phenology: global yearly (raster 300m) clms_global_lsp_300m_v1_yearly_geotiff
Land Surface Temperature: global 10-daily Daily Cycle (raster 5km) clms_global_lst_5km_v1_10daily-daily-cycle_geotiff
Land Surface Temperature: global 10-daily Daily Cycle (raster 5km) clms_global_lst_5km_v1_10daily-daily-cycle_netcdf
Land Surface Temperature: global 10-daily Thermal Condition Index (raster 5km) clms_global_lst_5km_v1_10daily-tci_geotiff
Land Surface Temperature: global 10-daily Thermal Condition Index (raster 5km) clms_global_lst_5km_v1_10daily-tci_netcdf
Land Surface Temperature: global hourly (raster 5km) clms_global_lst_5km_v1_hourly_geotiff
Land Surface Temperature: global hourly (raster 5km) clms_global_lst_5km_v1_hourly_netcdf
Land Surface Temperature: global 10-daily Daily Cycle (raster 5km) clms_global_lst_5km_v2_10daily-daily-cycle_geotiff
Land Surface Temperature: global 10-daily Daily Cycle (raster 5km) clms_global_lst_5km_v2_10daily-daily-cycle_netcdf
Land Surface Temperature: global 10-daily Thermal Condition Index (raster 5km) clms_global_lst_5km_v2_10daily-tci_geotiff
Land Surface Temperature: global 10-daily Thermal Condition Index (raster 5km) clms_global_lst_5km_v2_10daily-tci_netcdf
Land Surface Temperature: global hourly (raster 5km) clms_global_lst_5km_v2_hourly_geotiff
Land Surface Temperature: global hourly (raster 5km) clms_global_lst_5km_v2_hourly_netcdf
Lake Surface Water Temperature: global 10-daily near-real time (raster 1km) clms_global_lswt_1km_v1_10daily-nrt_netcdf
Lake Surface Water Temperature: global 10-daily reprocessed (raster 1km) clms_global_lswt_1km_v1_10daily-reproc_netcdf
Lake Water Quality: global 10-daily near-real time (raster 100m) clms_global_lwq_100m_v1_10daily-nrt_netcdf
Lake Water Quality: global 10-daily near-real time (raster 100m) - version 2 clms_global_lwq_100m_v2_10daily-nrt_netcdf
Lake Water Quality: global 10-daily near-real time (raster 1km) clms_global_lwq_1km_v1_10daily-nrt_netcdf
Lake Water Quality: global 10-daily reprocessed (raster 1km) clms_global_lwq_1km_v1_10daily-reproc_netcdf
Lake Water Quality: global 10-daily near-real time (raster 300m) clms_global_lwq_300m_v1_10daily-nrt_netcdf
Lake Water Quality: global 10-daily reprocessed (raster 300m) clms_global_lwq_300m_v1_10daily-reproc_netcdf
Lake Water Quality: global 10-daily near-real time (raster 300m) clms_global_lwq_300m_v2_10daily-nrt_netcdf
Normalized Difference Vegetation Index: global 10-daily (raster 1km) clms_global_ndvi_1km_v2_10daily_geotiff
Normalized Difference Vegetation Index: global 10-daily (raster 1km) clms_global_ndvi_1km_v2_10daily_netcdf
Normalized Difference Vegetation Index: global 10-daily statistics (raster 1km) clms_global_ndvi_1km_v2_statistics_geotiff
Normalized Difference Vegetation Index: global 10-daily statistics (raster 1km) clms_global_ndvi_1km_v2_statistics_netcdf
Normalized Difference Vegetation Index: global 10-daily (raster 1km) clms_global_ndvi_1km_v3_10daily_geotiff
Normalized Difference Vegetation Index: global 10-daily (raster 1km) clms_global_ndvi_1km_v3_10daily_netcdf
Normalized Difference Vegetation Index: global 10-daily statistics (raster 1km) clms_global_ndvi_1km_v3_statistics_geotiff
Normalized Difference Vegetation Index: global 10-daily statistics (raster 1km) clms_global_ndvi_1km_v3_statistics_netcdf
Normalized Difference Vegetation Index: global 10-daily (raster 300m) clms_global_ndvi_300m_v1_10daily_geotiff
Normalized Difference Vegetation Index: global 10-daily (raster 300m) clms_global_ndvi_300m_v1_10daily_netcdf
Normalized Difference Vegetation Index: global 10-daily (raster 300m) clms_global_ndvi_300m_v2_10daily_geotiff
Normalized Difference Vegetation Index: global 10-daily (raster 300m) clms_global_ndvi_300m_v2_10daily_netcdf
Net Primary Productivity: global 10-daily (raster 300m) clms_global_npp_300m_v1_10daily_geotiff
Net Primary Productivity: global 10-daily (raster 300m) clms_global_npp_300m_v1_10daily_netcdf
Snow Cover Extent: northern hemisphere daily (raster 1 km) clms_global_sce_1km_v1_daily_netcdf
Snow Cover Extent: Europe daily (raster 500 m) clms_global_sce_500m_v1_daily_netcdf
Surface Soil Moisture: global daily (raster 1 km) clms_global_ssm_1km_v1_daily_geotiff
Surface Soil Moisture: global daily (raster 1 km) clms_global_ssm_1km_v1_daily_netcdf
Snow Water Equivalent: northern hemisphere daily (raster 5 km) clms_global_swe_5km_v1_daily_netcdf
Snow Water Equivalent: northern hemisphere daily (raster 5 km), version 2 clms_global_swe_5km_v2_daily_netcdf
Soil Water Index: global 10-daily (raster 12.5 km) clms_global_swi_12.5km_v3_10daily_geotiff
Soil Water Index: global 10-daily (raster 12.5 km) clms_global_swi_12.5km_v3_10daily_netcdf
Soil Water Index: global daily (raster 12.5 km) clms_global_swi_12.5km_v3_daily_geotiff
Soil Water Index: global daily (raster 12.5 km) clms_global_swi_12.5km_v3_daily_netcdf
Soil Water Index: global daily (raster 12.5 km) clms_global_swi_12.5km_v3_static_netcdf
Soil Water Index: global time series (discrete global grid) clms_global_swi_12.5km_v3_time-series_netcdf
Soil Water Index: global 10-daily (raster 12.5 km) clms_global_swi_12.5km_v4_10daily_netcdf
Soil Water Index: global daily (raster 12.5 km) clms_global_swi_12.5km_v4_daily_netcdf
Soil Water Index: global daily (raster 1 km) clms_global_swi_1km_v1_daily_geotiff
Soil Water Index: global daily (raster 1 km) clms_global_swi_1km_v1_daily_netcdf
Soil Water Index: global daily (raster 1 km) clms_global_swi_1km_v2_daily_netcdf
Water Bodies: global monthly (raster 100m) clms_global_wb_100m_v1_monthly_netcdf
Water Bodies: global 10-daily (raster 1km) clms_global_wb_1km_v2_10daily_netcdf
Water Bodies: global 10-daily (raster 300m) clms_global_wb_300m_v1_10daily_netcdf
Water Bodies: global monthly (raster 300m) clms_global_wb_300m_v2_monthly_netcdf
Lake Water Level: observation time series (vector) clms_global_wl_lakes_v2_daily_geojson
Lake Water Level: observation time series (vector) clms_global_wl_rivers_v2_daily_geojson

Python:如何批量下载CLMS NDVI V3数据集?的更多相关文章

  1. Python 爬虫批量下载美剧 from 人人影视 HR-HDTV

    本人比較喜欢看美剧.尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的全部 HR-HDTV 的 ed2k下载链接.并依照先后顺序写入到文本文件, ...

  2. python多线程批量下载远程图片

    python多线程使用场景:多线程采集, 以及性能测试等 . 数据库驱动类-简单封装下 mysqlDriver.py #!/usr/bin/python3 #-*- coding: utf-8 -*- ...

  3. Python/Django 批量下载Excel

    一.前提 项目上需求的变更总是时时发生的,应对需求的我们,也只能变更我们代码,所以.继前两篇之后,我们的批量下载诞生了 二.安装 本文使用zipstream库进行压缩,安装方式:pip install ...

  4. Python爬虫批量下载糗事百科段子,怀念的天王盖地虎,小鸡炖蘑菇...

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

  5. 批量下载小说网站上的小说(python爬虫)

    随便说点什么 因为在学python,所有自然而然的就掉进了爬虫这个坑里,好吧,主要是因为我觉得爬虫比较酷,才入坑的. 想想看,你可以批量自动的采集互联网上海量的资料数据,是多么令人激动啊! 所以我就被 ...

  6. 批量下载网站图片的Python实用小工具

    定位 本文适合于熟悉Python编程且对互联网高清图片饶有兴趣的筒鞋.读完本文后,将学会如何使用Python库批量并发地抓取网页和下载图片资源.只要懂得如何安装Python库以及运行Python程序, ...

  7. Python 爬取qqmusic音乐url并批量下载

    qqmusic上的音乐还是不少的,有些时候想要下载好听的音乐,但有每次在网页下载都是烦人的登录什么的.于是,来了个qqmusic的爬虫. 至少我觉得for循环爬虫,最核心的应该就是找到待爬元素所在ur ...

  8. [python] 溜了,溜了,七牛云图片资源批量下载 && 自建图床服务器

    故事背景: 七牛云最近一波测试域名操作真是把我坑死了!这简直和百度赠送你2T网盘,之后再限速一样骚操作.于是,痛定思痛自己买个云主机.自己搭图床应用! 1.七牛图片批量下载到本地 1.1 曲折尝试 当 ...

  9. python批量下载微信好友头像,微信头像批量下载

    #!/usr/bin/python #coding=utf8 # 自行下载微信模块 itchat 小和QQ496631085 import itchat,os itchat.auto_login() ...

  10. Python 实现批量从不同的Linux服务器下载文件

    基于Python实现批量从不同的Linux服务器下载文件   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/file_for_downl ...

随机推荐

  1. DRF之JWT签发Token源码分析

    DRF之JWT签发Token源码分析 [一]JWT介绍 JWT(JSON Web Token)是一种用于身份认证和授权的开放标准(RFC 7519). 它基于JSON格式定义了一种安全的令牌,用于在客 ...

  2. 一文读懂HyperWorks有限元分析流程

    (1)通过模型浏览器(Model Browser)或者材料类型(material)图标进行材料模型的创建. (2)通过模型浏览器或者单元类型(property)图标,进行单元类型的创建.必要时,在单元 ...

  3. 如何获取上次BIOS所用时间

    在Windows任务管理器的"启动应用"页签的右上角,有一个"上次BIOS所用时间",这个时间可以通过注册表项来获取,注册表位置如下 HKLM\SYSTEM\C ...

  4. 天天用lock,不好奇他到底怎么工作的吗 —ReentrantLock 大白话

    从ReentrantLock到AQS 新手学习,若有不对,欢迎大佬 调教 ReentrantLock 我们经常用的 *ReentrantLock*是干什么的呢 我认为这是一个前台/门面(类似设计模式中 ...

  5. 使用plsql导出导入表的一种方式

    1.导出表 不选择导出全部表.选择的话只导出仅选择的表 2.导出存储过程.视图.函数等 要选中导出的存储过程等 注意文件格式是sql类型的.用以下方式改变,点击输出文件后边的文件夹图标 3.导入 刚才 ...

  6. Photoshop 2023 v24.6 Beta 直装爱国版本ps

    win用户看这 Ps Beta最新直装版本已更新教程免破解. https://www.88appp.com/10714.html Mac用户看 这Ps Beta最新直装版本已更新教程免破解. http ...

  7. vuePress2.x 多页面 多目录生成方案

    前言 因为官网介绍的都只有一个'一级标题' 只有一个markdown文件 最终编译后也只有一个html文件,类似于spa 单页项目 如何才有多页项目呢 百度查询 网上插件库有很多,大部分不能用, 后来 ...

  8. CF1918D Blocking Elements 题解

    CF1918D Blocking Elements 如果你做过以下两道题目,那么这道题对你来说会简单得多. P1182 数列分段 Section II P2034 选择数字 由于题目要求最大值的最小值 ...

  9. Codeforces Round #729 (Div. 2) C. Strange Function

    \(题意:定义f(i)为不能整除i的最小整数,求\displaystyle\sum_{i=1}^n f(i)\) 思路: 逐步筛掉因子,首先考虑f(i)=2的,肯定是奇数,也就是除了剩下的n/2个偶数 ...

  10. ?? js 语法糖

    leetcode 2619 遇到了 ?? 语法糖,简而言之 可选链功能 就是防止抛出异常 caught TypeError: Cannot read properties of undefined ( ...