Unten ist der Ablauf dieses Artikels. __1. Aktivieren Sie den Download direkt über den freigegebenen Link von Google Drive. __ __2. Laden Sie Daten unter Verwendung der obigen URL mit Python oder wget herunter, locken Sie (auf CLI) __ __3. Vorsichtsmaßnahmen bei der Ausführung mit Google Coloaboratory __
Wenn Sie in Google Drive einen Link zur Dateifreigabe erstellen, müssen Sie zur folgenden Seite springen und diese manuell herunterladen.
Klicken Sie dann auf die URL und konvertieren Sie die URL, damit Sie sie direkt herunterladen können. Es gibt URL-Konvertierungstools usw., aber Sie können direkt von der URL herunterladen, indem Sie die URL wie folgt umschreiben.
file/d
->uc?id=
oruc?export=download&id=
/view?usp=sharing
->
https://drive.google.com/file/d/<file_id>/view?usp=sharing
↓
https://drive.google.com/uc?id=<file_id>
or
https://drive.google.com/uc?export=download&id=<file_id>
Code zur Angabe der zuvor konvertierten URL und zum Herunterladen mit urlretrieve, wget, curl Python
import urllib.request
import sys
url = "https://drive.google.com/uc?export=download&id=<file_id>"
file_name = "file_name"
urllib.request.urlretrieve(url, file_name)
Shell
wget "https://drive.google.com/uc?export=download&id=<FILE_ID>" -O <FILE_NAME>
or
curl "https://drive.google.com/uc?export=download&id=<FILE_ID>" -O <FILE_NAME>
Wenn die Dateigröße wie unten gezeigt zu groß ist, wird kein Virenscan durchgeführt. Daher ist beim Herunterladen eine Bestätigung erforderlich. Wenn der obige Code ausgeführt wird, wird die HTML-Datei der Bestätigungsseite selbst heruntergeladen.
Um dies zu vermeiden, müssen Sie den Code zur Bestätigung erhalten. Sie können es mit dem folgenden Code erhalten.
curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=<FILE_ID>" > /dev/null
CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=<FILE_ID>" -o <FILE_NAME>
Führen Sie einfach den obigen Code in der Zelle aus, aber wenn Sie wie unten gezeigt "!" Am Zeilenanfang hinzufügen, wird die Variable nicht gespeichert. Daher können Sie es wie ein Shell-Skript ausführen, indem Sie %% Shell am Anfang der Zelle schreiben.
Fügen Sie am Anfang des obigen Codes %% Shell hinzu
Ehrlich gesagt, ich habe nicht wirklich das Bedürfnis, dies zu tun, weil ich es nur über den Freigabelink auf mein Laufwerk stellen muss, aber lol ich kann nicht viele Daten auf github speichern, also wenn ich eine Notizbuchdatei von Google Colaboratory usw. freigebe. Ich habe mich gefragt, ob es einen Vorteil gibt, dass Sie die Zelle erst unmittelbar nach dem Klonen ausführen müssen, indem Sie sie im Voraus schreiben.
Veröffentlichte Google Drive-Daten mit Curl oder Wget herunterladen Dateien mit Python im Web herunterladen
Recommended Posts