2017-02-25 2 views
1

Gibt es eine Möglichkeit, mit OAuth den gesamten Inhalt eines Google Bucket-Verzeichnisses in ein lokales Verzeichnis herunterzuladen.So laden Sie alle Dateien aus dem Verzeichnis google bucket in das lokale Verzeichnis mit google oauth

Ich habe zwei Möglichkeiten gefunden (get Request-Objekt) von Storage-API und gsutil. Aber da die API das direkte Herunterladen von Namen verwendet, muss ich zuerst die gesamte Liste des Bucket-Inhalts analysieren und dann die get-Anfrage senden und sie dann herunterladen. Ich finde gsutil bequemer, aber dafür muss ich die Details für den Berechtigungsnachweis hart codieren.

Grundsätzlich bin ich ein Client-bezogene Anwendung entwickeln, wo ich die große Abfrage Tabellendaten lokal auf dem Client-Server zum Download haben Kann mir jemand für diese

+0

auf diesem einen Blick. Https://cloud.google.com/storage/docs/xml-api/gspythonlibrary –

+0

Ich denke, in diesem Modus wird dem Benutzer ein Link zur Verfügung gestellt und dann wird er gebeten, den Code zu kopieren – user3411846

+0

Sie können die Blobstore API verwenden, um Dateien von Ihrem Google-Bucket hochzuladen oder herunterzuladen.Siehe, ob das hilft! –

Antwort

0

helfen, wenn Ihre Anwendung von Zeit kennt voraus die Objektnamen, Sie möchten eine Liste herunterladen, gefolgt von GETs für jedes Objekt.

Sie können dazu die Client-Bibliothek gcloud-python verwenden. Sie können konfigurieren, dass Ihre Clientanwendung über die OAuth2-Anmeldeinformationen verfügt und dass die Bibliothek den Rest der erforderlichen Authentifizierung für Sie übernimmt. Lesen Sie die Dokumentation here für die Grundlagen der Authentifizierung und [hier] (https://googlecloudplatform.github.io/google-cloud-python/stable/storage-blobs.html mit Google Cloud Storage-Objekten für die Interaktion.

+0

Ich lese die Dokumentation, aber immer noch kann ich keine expliziten Credentials Objekt erstellen der Fehler kommt – user3411846

+0

Wenn Sie denken, dies ist ein Fehler in der Bibliothek, können Sie auf ihre Issue Tracker, wenn Sie die Fehlerdetails angeben Hier kann jemand helfen. –

Verwandte Themen