Download de todos os arquivos do Google Cloud Platform

Oi, pessoal. Tudo bem?

Eu preciso baixar todos os arquivos do Google Cloud Platform para uma pasta e, em vez seguida, rodar o meu script de R. Porém, como usuária, eu só vejo a opção de baixar um arquivo de cada vez. Só que são mais de 100 arquivos referentes a apenas hoje.

Por isso, eu pesquisei no Google alguma forma de baixar todos os arquivos de uma vez, preferencialmente usando o R e o RStudio. Encontrei apenas comandos de Python e terminal. Eu prefiro continuar lidando apenas com o R. Alguém me recomenda alguma forma de fazer isso?

Obrigada!

Gabriela,

Você pode tentar usar o pacote googleCloudStorageR. Você precisa criar um projeto no console do GCP, coletar suas credenciais e fazer alguma coisa do tipo:

library(tidyverse)

## get your project name from the API console
proj <- "your-project"

## get bucket info
buckets <- gcs_list_buckets(proj)
bucket <- "your-bucket"
bucket_info <- gcs_get_bucket(bucket)
bucket_info

==Google Cloud Storage Bucket==
Bucket:          your-bucket 
Project Number:  1123123123 
Location:        EU 
Class:           STANDARD 
Created:         2016-04-28 11:39:06 
Updated:         2016-04-28 11:39:06 
Meta-generation: 1 
eTag:            Cxx=


## get object info in the default bucket
objects <- gcs_list_objects()

## save directly to an R object (warning, don't run out of RAM if its a big object)
## the download type is guessed into an appropriate R object
parsed_download <- gcs_get_object(objects$name[[1]])

## if you want to do your own parsing, set parseObject to FALSE
## use httr::content() to parse afterwards
raw_download <- gcs_get_object(objects$name[[1]], 
                               parseObject = FALSE)

## save directly to a file in your working directory
## parseObject has no effect, it is a httr::content(req, "raw") download
gcs_get_object(objects$name[[1]], saveToDisk = "csv_downloaded.csv")

## save several files 
for (i in seq_along(objects$name)){
gcs_get_object(objects$name[[i]], saveToDisk = str_glue("csv_downloaded_{i}.csv"))
}

No site do pacote tem um tutorial mais detalhado: http://code.markedmondson.me/googleCloudStorageR/articles/googleCloudStorageR.html

1 curtida