[PYTHON] Laden Sie Daten direkt von der Laufwerks-URL herunter (Google Colaboratory).

zunaechst

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 __

Laden Sie direkt über den freigegebenen Link von Google Drive herunter

Wenn Sie in Google Drive einen Link zur Dateifreigabe erstellen, müssen Sie zur folgenden Seite springen und diese manuell herunterladen. スクリーンショット 2020-03-02 22.13.21.png

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>

Mit Python oder Shell herunterladen

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>

Für große Dateien

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. スクリーンショット 2020-03-02 22.24.46.png

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>

Laufen auf Google Coloboratory

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. スクリーンショット 2020-03-02 22.58.24.png

Fügen Sie am Anfang des obigen Codes %% Shell hinzu

スクリーンショット 2020-03-02 23.02.20.png

entpacken etc.

スクリーンショット 2020-03-02 23.33.13.png

Schließlich

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.

Referenz & Zitat

Veröffentlichte Google Drive-Daten mit Curl oder Wget herunterladen Dateien mit Python im Web herunterladen

Recommended Posts

Laden Sie Daten direkt von der Laufwerks-URL herunter (Google Colaboratory).
Laden Sie Dateien direkt auf Google Drive herunter (mithilfe von Google Colaboratory).
[Python] Speichern Sie PDF von Google Colaboratory in Google Drive! -Lass uns Daten für maschinelles Lernen sammeln-
Google-Labor
So suchen Sie in Google Colaboratory nach Google Drive
Laden Sie Bilder von der URL-Liste in Python herunter
[Python] Laden Sie das Originalbild von der Google Bildsuche herunter
Laden Sie Bilder aus einer Textdatei herunter, die die URL enthält
Laden Sie die von Google Colaboratory erstellte CSV-Datei herunter
Erstellen Sie eine Kopie einer Google Drive-Datei aus Python
So laden Sie Dateien in Google Drive mit Google Colaboratory