Google Drive API-Tipps (Python)

Initialisierung für Dienstkonto

https://cloud.google.com/iam/docs/creating-managing-service-account-keys?hl=ja Holen Sie sich die JSON-Datei, indem Sie hier verweisen

from google.oauth2 import service_account
from googleapiclient.discovery import build

SCOPES = ['https://www.googleapis.com/auth/drive']

credentials = service_account.Credentials.from_service_account_file(JSON_FILE_PATH, scopes=SCOPE)
self.service = build('drive', 'v3', credentials=credentials)

Ich möchte eine Datei in das angegebene Verzeichnis hochladen

Lassen Sie uns die Datei-ID als Array übergeben (es ist leicht zu vergessen)

from apiclient.http import MediaFileUpload

#Die Datei-ID des Verzeichnisses befindet sich am Ende des Pfads
# https://drive.google.com/drive/folders/FILE_ID
file_metadata = {'name': 'photo.jpg', 'parents': [FILE_ID]}
media = MediaFileUpload('files/photo.jpg', mimetype='image/jpeg')
file = self.service.files().create(body=file_metadata,
                                   media_body=media,
                                   fields='id').execute()

Was soll ich beim Hochladen als Mimetyp angeben?

Beziehen Sie sich auf diesen Bereich https://developers.google.com/drive/api/v3/mime-types https://developer.mozilla.org/ja/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types

Ich möchte verschiedene Informationen über die Datei sehen

* Gibt alle Informationen zurück Übergeben Sie die erforderlichen Elemente durch Kommas getrennt

self.service.files().get(fileId=FILE_ID, fields="*").execute()

Ich habe eine Datei hochgeladen, kann aber nicht darauf zugreifen

Wahrscheinlich nicht autorisiert, ziehen wir es an Wenn Sie im Voraus ein privilegiertes Verzeichnis erstellen und in dieses hochladen, müssen Sie nicht jedes Mal eine Berechtigung erteilen.


user_permission = {
        'type': 'user',
        'role': 'writer',
        'domain': '[email protected]'
    }

self.service.permissions().create(
                    fileId=FILE_ID,
                    body=user_permission,
                    fields='id',
                )

Speichern Sie die heruntergeladene Datei unter dem angegebenen Pfad

Schreiben wir mit get buffer


import io
from apiclient.http import MediaIoBaseDownload

request = self.service.files().get_media(fileId=FILE_ID)
fh = io.BytesIO()
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
    status, done = downloader.next_chunk()
    print("Download %d%%." % int(status.progress() * 100))

with open(SAVE_FILE_PATH, "wb") as f:
    f.write(fh.getbuffer())

Recommended Posts

Google Drive API-Tipps (Python)
Python-Tipps
Laden Sie eine JPG-Datei mit der Google Drive-API in Python hoch
Python-Tipps
Python-Tipps
[Python] Klicken Sie auf die Google Übersetzungs-API
[Python3] Google übersetzt Google Übersetzung ohne Verwendung von API
Laden Sie Google Drive-Dateien in Python herunter
Verwenden Sie die Google Analytics-API von Python
Python Conda Tipps
Tipps zum Python-Debuggen
Python-Klick-Tipps
Holen Sie sich Google Fit API-Daten in Python
Unerwartet (?) Python Bean Wissen
Verwenden Sie die Google Cloud Vision-API von Python
Erstellen einer Google-Tabelle mit der Python / Google Data-API
Laden Sie Bilder mit Python auf Google Drive hoch
Führen Sie die Google Analytics-API (Core v3) in Python aus
Tweet (API 1.1) mit Google App Engine für Python
Tipps zum Erreichen der ATND-API mit Python
Laden Sie Dateien mit Lambda (Python) auf Google Drive hoch.
Python- und Numpy-Tipps
Google Drive-Datei verschieben
Google Colab Tipps Organisieren
Fahren Sie WebDriver mit Python
Evernote-API in Python
Python-Tipps (mein Memo)
Liste der Python-APIs für OpenCV3
Tipps zur Installation von Python PyTorch
C-API in Python 3
TensorFlow API-Memo (Python)
Google Drive API Dateiberechtigung festlegen (Berechtigungen für Google Drive-Dateien festlegen)
Erstellen Sie eine Kopie einer Google Drive-Datei aus Python
[Python] Abrufen von Insight-Daten mithilfe der Google My Business-API
Sprachtranskriptionsverfahren mit Python und Google Cloud Speech API
Sprachdateierkennung durch Google Speech API v2 mit Python
Hochladen auf ein freigegebenes Laufwerk mit Google Drive API V3
Hit Mastodons API in Python
Verwenden Sie die Trello-API mit Python
Tipps zum Nachdenken über np.newaxis in Python / Numpy
ls -R auf Google Drive
AWS CDK-Lambda + API-Gateway (Python)
EXE Web API von Python
Verwenden Sie die Twitter-API mit Python
Lernen Sie Python mit Google Colaboratory
Empfangen von Standardeingabetipps @ python
[Tipps] Behandle Athena mit Python
Web-API mit Python + Falcon
Abrufen von Daten aus der Analyse-API mit Google API Client für Python
Blender Python API in Houdini (Python 3)
Rufen Sie die API mit python3 auf.
Hängen Sie Google Drive mit google-drive-ocamlfuse ein
Verwenden Sie die Unterschall-API mit Python3
[Python + Selen] Tipps zum Scraping
~ Tipps für Python-Anfänger mit Liebe von Pythonista ③ ~