[PYTHON] Holen Sie sich den in AWS S3 gespeicherten Dateinamen (1000 oder mehr)

Was du machen willst

Ich möchte alle Dateinamen kennen, die unter einem bestimmten Ordner in einem bestimmten Bucket von AWS S3 gespeichert sind. Zu diesem Zeitpunkt befinden sich mehr als 1000 Dateien unter einem bestimmten Ordner in einem bestimmten Bucket.

wichtiger Punkt Da list_object nur bis zu 1000 Elemente abrufen kann, muss ein Prozess zum Abrufen von Dateiinformationen entwickelt werden.

Methode

https://boto3.amazonaws.com/v1/documentation/api/latest/guide/paginators.html Wie in beschrieben.

Code

sample.py


import boto3

MY_REGION = 'Regionsname';
MY_BUCKET = 'Eimername';

#Verzeichnis unter dem Eimer
TARGET_PATH = 'tmp/YYYY/MM/DD/';

client = boto3.client('s3', region_name=MY_REGION)
paginator = client.get_paginator('list_objects')

#Filtereinstellungen
operation_parameters = {
    'Bucket': MY_BUCKET,
    'Prefix': TARGET_PATH
}

page_iterator = paginator.paginate(**operation_parameters)

#S3-Objektschlüssel ausgeben
for page in page_iterator:
    for content in page['Contents']:
        print(content['Key'])

Ausgabebeispiel des obigen Codes

tmp/YYYY/MM/DD/0001.txt
tmp/YYYY/MM/DD/0002.txt
tmp/YYYY/MM/DD/0003.txt
....
tmp/YYYY/MM/DD/1000.txt
tmp/YYYY/MM/DD/1001.txt
tmp/YYYY/MM/DD/1002.txt

memo ・ Ich persönlich erinnere mich, dass es schwierig war, Informationen zu mehr als 1000 Dateien zu erhalten, aber kürzlich war ich ein wenig beeindruckt, dass dies einfach war, und schrieb diesen Artikel. -Auch ich wusste nicht, dass Sie Filterung wie unter einem bestimmten Ordner angeben können, also Memo Memo.

Recommended Posts

Holen Sie sich den in AWS S3 gespeicherten Dateinamen (1000 oder mehr)
Abrufen des Dateinamens in einem Ordner mithilfe von glob
Holen Sie sich den Hostnamen in Python
Formatieren Sie das Git-Protokoll und erhalten Sie den festgeschriebenen Dateinamen im CSV-Format
Ich möchte den Dateinamen, die Zeilennummer und den Funktionsnamen in Python 3.4 erhalten
So erhalten Sie den Variablennamen selbst in Python
Holen Sie sich den MIME-Typ in Python und bestimmen Sie das Dateiformat
Rufen Sie den Klassennamen ab, in dem die Methode im Dekorator definiert ist
Geben Sie die in S3 Bucket enthaltene Schlüsselliste in eine Datei aus
Suchen Sie den Dateinamen einschließlich des angegebenen Wortes und der angegebenen Erweiterung im Verzeichnis
Rufen Sie die Formel in der Excel-Datei als Zeichenfolge in Python ab
Geben Sie auf der AWS Cloud-Produktseite den Namen des AWS-Dienstes in csv ein
Speichern Sie die Binärdatei in Python
Holen Sie sich den Desktop-Pfad in Python
Holen Sie sich den Skriptpfad in Python
Die Geschichte des "Lochs" in der Akte
Holen Sie sich den Desktop-Pfad in Python
Holen Sie sich den Dateipfad mit Pathlib
Holen Sie sich die Abfragezeichenfolge (Abfragezeichenfolge) mit Django
Der Dateiname war in Python schlecht und ich war süchtig nach Import
Holen Sie sich die IP-Adresse des Kunden mit Django
Holen Sie sich die besten n-ten Werte in Pandas
Verwenden Sie boto, um die Datei von S3 herunterzuladen.
Nehmen Sie die logische Summe von List in Python (Zip-Funktion)
[Python] Ruft den Variablennamen mit str ab
Rufen Sie den Pfad zur systemd-Einheitendatei ab
Lesen Sie die Datei Zeile für Zeile mit Python
Ich habe versucht, die verkratzten Daten in CSV zu speichern!
Lesen Sie die Datei Zeile für Zeile mit Python
Ich kann das Element in Selen nicht bekommen!
[Python] Ruft den Zeichencode der Datei ab
Ruft die EDINET-Codeliste in Python ab
[Python] Lesen Sie die angegebene Zeile in der Datei
So erhalten Sie den Notebook-Namen, den Sie derzeit in Google Colab verwenden
Python / Unterprozess> Symbolischer Link Implementierung, um nur den Zieldateinamen abzurufen> os.readlink ()
Behandeln Sie CSV mit dem Element, das Sie im Namen der Datei analysieren möchten