Tansat XCO2数据下载

批量下载TanSat XCO2 产品

网址:http://39.106.65.69/CGGA
网站本身不支持直接批量点击下载,而是需要一个一个手动下载:
在这里插入图片描述
总共有300+数据,一个一个点可能有点麻烦,因此,可以尝试用简单的爬虫下载:
先随机下载一个数据,然后查看他的下载URL:
在这里插入图片描述
可以看到他的数据url有明显的规律:“https://zheda.oss-cn-beijing.aliyuncs.com/casa_data/TanSat/L2_XCO2/XXXXXX(年月)/数据名”
那么我们可根据这个规律构建出所有我们需要下载的数据的url并根据此进行下载:

import requests
import os
import random

url_header='https://zheda.oss-cn-beijing.aliyuncs.com/casa_data/TanSat/L2_XCO2/'#固定的url前缀
year=[2017,2018]

dir_out=r'E:\Tansat\CO2_data'#输出路径设置
#下面的循环主要是为了构建出所有url,大体思路就是通过年份和月份,一个月全部当成31天,可以不用考虑大小月,如果没有那一天,那么url也不会有内容
for year_i in year:
    for month_i in range(1,13):
        if year_i == 2017:
            if month_i <= 3:
                continue
        if year_i == 2018:
            if month_i >5:
                break
        # print(str(year_i)+str(month_i).zfill(2))
        
        for day_i in range(1,32):
            url_now=url_header+str(year_i)+str(month_i).zfill(2)+'/'+'TanSat_ACGS_SCI_ND_L2_XCO2_lite_'+str(year_i)+str(month_i).zfill(2)+str(day_i).zfill(2)+'.nc'
            out_name='TanSat_ACGS_SCI_ND_L2_XCO2_lite_'+str(year_i)+str(month_i).zfill(2)+str(day_i).zfill(2)+'.nc'
			#这开始 前面url_now已经成功将所有url已经构建成功了,后面是爬取过程:
            res=requests.get(url_now)
            if res.status_code == 200:
                with open(os.path.join(dir_out,out_name),'wb') as f:
                    f.write(res.content)
                print('The download file: '+out_name)#成功的数据输出
            else:
                print('Unsucessed file: '+out_name)#失败的数据输出


  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值