2016-07-13 4 views
1

Я пытаюсь загрузить данные из одного из публичных ковшей Amazon. Here is a description of the bucket in questionAccess aws s3 public bucket

Ведро имеет папки с доступом в Интернет для example. Я бы хотел скачать все перечисленные файлы в этой папке. Будет отображен длинный список подходящих фрагментов, и целью было бы получить все файлы в папке за один раз, а не загружать их отдельно с сайта http.

Из других вопросов StackOverflow я понимаю, что мне нужно использовать конечную точку REST и использовать такой инструмент, как AWS CLI или Cyberduck, но я не могу заставить их работать.

Я думаю, что проблема может быть аутентификацией. У меня нет учетной записи AWS, и я надеялся придерживаться гостевого/анонимного доступа. У кого-нибудь есть хорошее решение/инструмент, чтобы пройти общественное ведро и захватить содержимое в качестве гостя? Может ли другой подход использовать curl или wget для этого типа задачи?

Спасибо.

+0

Примечание ... [мы не развлекаться] (http://stackoverflow.com/help/on-topic) «есть ли инструмент для ...» вопросов при переполнении стека. –

ответ

2

Для AWS CLI вам необходимо предоставить флаг --no-sign-request, чтобы пропустить подписание. Пример:

> aws s3 ls landsat-pds 
Unable to locate credentials. You can configure credentials by running "aws configure". 
> aws s3 ls landsat-pds --no-sign-request 
          PRE L8/ 
          PRE landsat-pds_stats/ 
          PRE runs/ 
          PRE tarq/ 
          PRE tarq_corrupt/ 
          PRE test/ 
2015-01-28 10:13:53  23764 index.html 
2015-04-14 10:43:22   25 robots.txt 
2016-07-13 12:53:31   38 run_info.json 
2016-07-13 12:53:30 23971821 scene_list.gz 

Чтобы скачать весь этот ковш в каталог, вы могли бы сделать что-то вроде этого:

> mkdir landsat-pds 
> aws s3 sync s3://landsat-pds landsat-pds --no-sign-request 
+0

Спасибо, Джордан, который работал как шарм. – Grant

Смежные вопросы