简明使用亚马逊AWS CLI S3下载SpaceNet遥感数据集教程

简介

我们下载SpaceNet遥感数据集的时候,肯定会用到一个亚马逊的S3账号,但是这个账号搞起来比较麻烦,新手肯定会遇到很多问题,这里我就来指引一下大家

 

注册

果没有亚马逊AWS的账号,先去官网注册一个

https://aws.amazon.com/cn

进入官网点搜索框输入——S3进行搜索

SpaceNet数据存放在S3服务上,所以账号必去登录S3服务才能下载数据,普通账号默认没有登录S3服务

将刚刚注册好的账号到S3服务进行登录

AWS登录S3服务需要添加信用卡。现在AWS支持国内的信用卡,

所以不用大费周折去弄国际信用卡,这里我们添加自己的信用卡,用人民币结账就行

这一步必须要成功,否则后面流程进行不下去

创建用户

登录成功后如下图,我们开始创建用户

点击右上角,(My Security Credentials)我的安全凭证

点击用户——添加用户(我这里已经添加了一个SpanceNet-2的号了)

用户名: SpaceNet-1
访问类型: 编程访问

选择直接附加到现有策略,因为数据集是存放在S3服务上

所以这里搜索所有S3策略给创建的用户

默认下一步,直到创建用户完成

系统会给一个访问密钥 ID、私有访问密钥

下载.CSV文件保存这些信息

下载安装

访问亚马逊AWS CLI的工具进行安装(我这里下载windows系统版本的演示)

AWS CLI windows版本地址
https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-windows.html

Windows(64位)的AWS CLI MSI安装程序
https://awscli.amazonaws.com/AWSCLIV2.msi

默认安装即可

安装完毕我们去CMD进行测试,输入aws help

显示如下图,则环境安装成功

本地配置秘钥

管理员方式运行CMD并输入
cd /d C:\Program Files\Amazon\AWSCLIV2\

如果有多个账户可以设置一个默认用户,使用以下命令(没有则忽略)
set AWS_DEFAULT_PROFILE=SpaceNet-1

配置证书
aws configure

  1. AWS Access Key ID [None]: 密钥 ID
  2. AWS Secret Access Key [None]: 私有访问密钥
  3. Default region name [None]: us-west-2
  4. Default output format [None]: json

 

SpaceNet下载

SpaceNet遥感数据集下载

https://spacenetchallenge.github.io/

查看

查看数据列表

aws s3 ls s3://spacenet-dataset/ --request-payer requester

下载数据——以AOIs为例

先获取列表
aws s3 ls s3://spacenet-dataset/AOIs/ --request-payer requester

下载s3

我下载AOI_4shanghai的,先获取
aws s3 ls s3://spacenet-dataset/AOIs/AOI_4_Shanghai/ --request-payer requester

下载数据示例
aws s3 cp s3://spacenet-dataset/AOIs/AOI_4_Shanghai . --recursive

aws s3 cp s3://arn:aws:s3:us-east-1:604877620213:accesspoint/dfdc-data-ap-1/test/metadata.json . --request-payer --region=us-east-1



比如下载到D盘
aws s3 cp s3://spacenet-dataset/AOIs/AOI_4_Shanghai d:\ 

同步s3示例
aws s3 sync --no-sign-request s3://openneuro.org/ds002870 ds002870-download/

 

为避免数据下载中断建议数据一个一个的下载,例如定位到AOI_4_Shanghai文件夹

该命令会将AOI_4_Shanghai文件夹下所有数据下载到当前(不能自定下载目录)

注意不包括AOI_4_Shanghai自身(注意路径结尾的 “.”   有空格且不能省略,否则下载失败)

THE END