
Ich möchte ein Skript zum Herunterladen schreibendieser Ordnervon Google Drive. Das Skript richtet sich an nicht erfahrene UNIX-Benutzer, daher möchte ich nicht mehr als curl oder wget verwenden. Ich habe Lösungen mit der Datei-ID gesehen, aber in meinem Fall gelingt es mir nicht, die Datei-ID abzurufen.
Hat es jemand geschafft, Ordner von Google Drive herunterzuladen?
Hier sind die Lösungen, die ich ausprobiert habe:
Antwort1
Die einfachste aktuelle Lösung (2021), die ich zum Herunterladen großer Ordner von Google Drive gefunden habe, ist gdrive:
http://github.com/prasmussen/gdrive
gdrive download --recursive --skip <file_id>
wo <file_id>
ist die ID, die Sie aus der Ordner-URL erhalten. Sie müssen nichts konfigurieren, Sie werden bereits nach Ihren Anmeldeinformationen usw. gefragt.
Das --skip
Flag ist bei großen Ordnern nützlich, da der Download an einem bestimmten Punkt ablaufen kann. Sie führen den Befehl dann erneut aus und --skip
lassen ihn wie einen funktionieren rsync
.
Ab diesem Datum --skip
ist ein relativ neues Flag und ist verfügbar, wenn Sie es gdrive
über Go installieren. Wenn Ihr System gdrive
es nicht hat, versuchen Sie es ohne --skip
. Wenn Sie es dann wirklich brauchen, installieren Sie es go get
wie auf der GitHub-Readme-Seite beschrieben.
Antwort2
Ich habe mithilfe der PyDrive-Bibliothek einen Python-Code geschrieben, der rekursiv die Unterordner und Dateien in einem übergeordneten Ordner abrufen kann. Mithilfe der IDs der Dateien habe ich dann mithilfe von wget ein Bash-Skript generiert.
Schritt 1 Ich habe die PyDrive-Bibliothek verwendet. Um diese Bibliothek zu verwenden, müssen Sie die hier beschriebenen Anweisungen ausführen.Verknüpfung.
Schritt 2: Erstellen Sie nun ein Python-Skript oder Notebook im selben Arbeitsverzeichnis, in dem Sie die Datei „client_secrets.json“ gespeichert haben. Ich habe das Notebook unten angehängt.
https://gist.github.com/immuntasir/73b8e8eef7e6c9066aaf2432bebf7db0
Schritt 3
Kopieren Sie „script.sh“ mit scp auf den Remote-Server.
scp ~/path/script.sh username@ip:path
Schritt 4
Melden Sie sich beim Remote-Server an und navigieren Sie zum Pfad. Machen Sie das Skript dann mit dem folgenden Befehl ausführbar.
chmod 777 script.sh
Führen Sie das Skript aus und voilà!
./script.sh
Ich habe auch ein Tutorial geschrieben, das Sie hier finden:https://medium.com/@immuntasir/recursively-download-all-the-contents-of-a-google-drive-folder-using-python-wget-and-a-bash-script-d8f2c6b105d5
Hoffe das hilft!
Antwort3
Ihre Datei-ID befindet sich in der URL-Adresse Ihres Ordners. Sie können einfach ausführen
wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME