Utilisez Boto3 pour récupérer plus de 1000 préfixes de la liste de fichiers de S3

En mémoire

Par défaut, vous ne pouvez obtenir que 1000 préfixes depuis S3, donc si vous en avez 1000 ou plus, utilisez paginator.

Documents Boto3

import boto3

# Create a client
client = boto3.client('s3', region_name='us-west-2')

# Create a reusable Paginator
paginator = client.get_paginator('list_objects')

# Create a PageIterator from the Paginator
page_iterator = paginator.paginate(Bucket='my-bucket')

for page in page_iterator:
    print(page['Contents'])

Comme mentionné ci-dessus par défaut dans le document, la liste des 1000 préfixes est stockée dans la liste de page_iterator. Je vais les développer pour les rendre plus faciles à manipuler.

import boto3
import itertools

client = boto3.client('s3', region_name='us-west-2')
paginator = client.get_paginator('list_objects')
page_iterator = paginator.paginate(Bucket='my-bucket')
contents = list(itertools.chain.from_iterable(page_iterator))

Vous pouvez désormais gérer plus de 1000 préfixes

Recommended Posts

Utilisez Boto3 pour récupérer plus de 1000 préfixes de la liste de fichiers de S3
Supprimer ou récupérer des tableaux de fasta en fonction du fichier de liste d'ID
Comment utiliser la liste []
[Python] Comment utiliser la liste 1
Comment utiliser SWIG de WAF
[Python] Comment utiliser la liste 3 Ajouté
Utilisez boto3 pour accéder à S3
Utilisez BeautifulSoup pour extraire un lien contenant une chaîne d'un fichier HTML
Script pour générer un répertoire à partir d'un fichier json
Utilisez boto pour télécharger le fichier depuis S3.
[TF] Comment utiliser Tensorboard de Keras
Je veux utiliser jar de python
Utilisez .flatten () [0] de numpy pour récupérer la valeur
Joindre les éléments de la liste sans «». (Récupérer la chaîne de la liste sans '')
Résumé de l'utilisation de la liste Python
Utilisez boto pour charger / télécharger des fichiers vers s3.