Google Cloud Storage com Python: Um Guia Completo
Francisco Júnior
Posted on December 13, 2023
O armazenamento em nuvem desempenha um papel crucial na infraestrutura moderna de aplicativos, permitindo o armazenamento escalável e seguro de dados. O Google Cloud Storage é uma solução de armazenamento na nuvem oferecida pelo Google Cloud Platform (GCP), permitindo que desenvolvedores armazenem e recuperem dados de forma eficiente e segura. Neste artigo, exploraremos como usar o Google Cloud Storage com Python, abordando desde a configuração inicial até operações mais avançadas.
Configuração do Ambiente
Antes de começarmos, é necessário configurar o ambiente. Certifique-se de ter uma conta no Google Cloud Platform e crie um projeto. Em seguida, ative a API do Cloud Storage e gere as credenciais de serviço em JSON. Guarde esse arquivo, pois será necessário para autenticação.
Configuração do Console do Google Cloud
- Acesse o Console do Google Cloud.
- Selecione ou crie um projeto.
- No menu de navegação à esquerda, clique em "API e Serviços" e, em seguida, em "Credenciais".
- Clique em "Criar credenciais" e selecione "Chave de Conta de Serviço".
- Escolha um papel para a chave de serviço ou atribua uma função existente.
- Selecione um tipo de chave (JSON é recomendado) e clique em "Criar". O arquivo JSON com suas credenciais será baixado automaticamente.
Instalação de Dependências
Instale a biblioteca google-cloud-storage
usando o gerenciador de pacotes pip
:
pip install google-cloud-storage
Autenticação
Para autenticar-se com o Google Cloud Storage, utilize as credenciais de serviço que você baixou anteriormente. O seguinte exemplo mostra como configurar a autenticação em seu código Python:
from google.cloud import storage
# Substitua 'path/to/your/credentials.json' pelo caminho do seu arquivo de credenciais.
client = storage.Client.from_service_account_json('path/to/your/credentials.json')
Upload de Arquivos
Agora que o ambiente está configurado, vamos começar a enviar arquivos para o Cloud Storage. O código a seguir demonstra como fazer o upload de um arquivo local para um bucket específico:
def upload_blob(bucket_name, source_file_name, destination_blob_name):
"""Faz upload de um arquivo para o Google Cloud Storage."""
bucket = client.get_bucket(bucket_name)
blob = bucket.blob(destination_blob_name)
blob.upload_from_filename(source_file_name)
print(f'Arquivo {source_file_name} enviado para {destination_blob_name} no bucket {bucket_name}.')
Download de Arquivos
Recuperar arquivos do Cloud Storage também é simples. Veja como fazer o download de um arquivo específico:
def download_blob(bucket_name, source_blob_name, destination_file_name):
"""Baixa um arquivo do Google Cloud Storage."""
bucket = client.get_bucket(bucket_name)
blob = bucket.blob(source_blob_name)
blob.download_to_filename(destination_file_name)
print(f'Arquivo {source_blob_name} baixado para {destination_file_name}.')
Listagem de Arquivos no Bucket
Para listar os arquivos em um bucket, utilize o seguinte código:
def list_blobs(bucket_name):
"""Lista todos os blobs em um bucket."""
bucket = client.get_bucket(bucket_name)
blobs = bucket.list_blobs()
print(f'Arquivos no bucket {bucket_name}:')
for blob in blobs:
print(blob.name)
Exclusão de Arquivos
Remover um arquivo do Cloud Storage é feito da seguinte maneira:
def delete_blob(bucket_name, blob_name):
"""Exclui um arquivo do Google Cloud Storage."""
bucket = client.get_bucket(bucket_name)
blob = bucket.blob(blob_name)
blob.delete()
print(f'Arquivo {blob_name} excluído do bucket {bucket_name}.')
Conclusão
O Google Cloud Storage oferece uma solução robusta e escalável para o armazenamento de dados na nuvem. Ao integrar o Cloud Storage com Python, os desenvolvedores têm acesso a uma variedade de operações que podem ser incorporadas em seus aplicativos. Este guia fornece uma introdução abrangente para começar a trabalhar com o Google Cloud Storage usando Python, mas há muitos recursos adicionais e funcionalidades avançadas disponíveis na documentação oficial do Google Cloud Platform. Explore esses recursos para aprimorar ainda mais suas aplicações e aproveitar ao máximo o armazenamento em nuvem.
Posted on December 13, 2023
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
December 20, 2023