Récapitulatif des opérations du fichier bucket (transfert, acquisition, suppression, lecture, etc.) vers GCS par python

Courir en premier.py


import os
import pandas as pd
from io import BytesIO
from pathlib import Path
from google.cloud import storage
from google.oauth2 import service_account

def get_project_credentials():
    credentials = service_account.Credentials.from_service_account_file(
        "xx/xx/xx/xx.json",#Le chemin où se trouve le fichier json pour la clé de compte de service
        scopes=["https://www.googleapis.com/auth/cloud-platform"],
    )
    return credentials


def get_storage_client(credentials):
    storage_client = storage.Client(
        credentials = credentials,
        project = credentials.project_id,
    )
    return storage_client

Créer un bucket

created_bucket.py


created_bucket_name = 'tmp_bucket_qitaqita'

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)
bucket = storage_client.create_bucket(created_bucket_name)

Notez que les noms de bucket doivent être uniques dans le monde. (Au début, j'ai essayé de le créer avec le nom "tmp_bucket", mais j'ai eu une erreur car il existe déjà.)

Transférer les fichiers locaux vers le bucket

trans_to_bucket.py


bucket_name = 'tmp_bucket_qitaqita'
file_name = 'send_txt.txt' #Nom de quoi envoyer
destination_blob_name = 'sended_txt.txt' #Nom à la destination

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

bucket = storage_client.get_bucket(bucket_name)
blob = bucket.blob(destination_blob_name)
blob.upload_from_filename(file_name)

Si vous nommez la destination comme suit, un répertoire appelé make_dir sera créé et les fichiers y seront transférés. destination_blob_name = 'make_dir/sended_txt_2.txt'

Supprimer le fichier dans le bucket

del_bucket_file.py


bucket_name = 'tmp_bucket_qitaqita'
file_name = 'sended_txt.txt'#Le nom du fichier que vous souhaitez supprimer dans le bucket

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

bucket = storage_client.get_bucket(bucket_name)
blob = bucket.blob(file_name)
blob.delete()

Afficher une liste de noms de compartiment

bucket_name.py


credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

blobs = storage_client.list_buckets()
for blob in blobs:
    print(blob.name)

Afficher une liste de noms de fichiers dans le compartiment

filename_in_bucket.py


bucket_name = 'tmp_bucket_qitaqita'

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

bucket = storage_client.get_bucket(bucket_name)
blobs = bucket.list_blobs()
for blob in blobs:
    print(blob.name)

Supprimer le bucket

del_bucket.py


bucket_name = 'tmp_bucket_qitaqita'#Nom du bucket que vous souhaitez supprimer

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

bucket = storage_client.get_bucket(bucket_name)
bucket.delete()

Lisez le fichier txt dans le bucket et enregistrez-le localement

Chargement de la sauvegarde.py


bucket_name = 'tmp_bucket_qitaqita'
file_name = 'sended_txt.txt'#Nom du fichier dans le bucket que vous souhaitez lire

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

bucket = storage_client.get_bucket(bucket_name)
blob = storage.Blob(file_name, bucket)

content = blob.download_as_string()
with open('sended_txt.txt', mode='wb') as f:
    f.write(content)

Lisez le fichier csv sur le seau avec les pandas

Lire le fichier csv.py


bucket_name = 'tmp_bucket_qitaqita'
file_name = 'dataset_data.csv'

credentials = get_project_credentials()
storage_client = get_storage_client(credentials)

bucket = storage_client.get_bucket(bucket_name)
blob = storage.Blob(file_name, bucket)
content = blob.download_as_string()
df_csv = pd.read_csv(BytesIO(content))

S'il existe d'autres opérations susceptibles d'être demandées, ajoutez-les le cas échéant.

A part: Ceci est le premier message à qiita. J'espère que cela aide.

Recommended Posts

Récapitulatif des opérations du fichier bucket (transfert, acquisition, suppression, lecture, etc.) vers GCS par python
Lisez le fichier xml en vous référant au didacticiel Python
résumé lié à l'opération de fichier python
Comment changer le fichier de configuration pour qu'il soit lu par Python
Lisez le fichier ligne par ligne avec Python
Lisez le fichier ligne par ligne avec Python
Comment lire un fichier CSV avec Python 2/3
[Python] Comment lire des fichiers Excel avec des pandas
[Python] Résumé des opérations sur les fichiers S3 avec boto3
Lire ligne par ligne à partir d'un fichier avec Python
Modèle de script python pour lire le contenu du fichier
[Python] Fonctions à petite échelle créées et utilisées en privé (opérations sur les fichiers, etc.)
Opérations de création de dossier / déplacement de fichier / compression / suppression avec python
Comment lire du texte avec une entrée standard ou une spécification de nom de fichier comme cat en Python
Opérations sur les fichiers en Python
[Python] Opération de fichier / répertoire
Manipulation de fichiers avec Python
Lire le fichier csv Python
Comment lire un fichier Excel (.xlsx) avec Pandas [Python]