Conseils relatifs aux API Google Drive (Python)

Initialisation pour le compte de service

https://cloud.google.com/iam/docs/creating-managing-service-account-keys?hl=ja Obtenez le fichier json en vous référant ici

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)

Je souhaite télécharger un fichier dans le répertoire spécifié

Passons l'ID de fichier sous forme de tableau (c'est facile à oublier)

from apiclient.http import MediaFileUpload

#L'ID de fichier du répertoire se trouve à la fin du chemin
# 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()

Que dois-je spécifier comme type MIME lors du téléchargement?

Référez-vous à cette zone https://developers.google.com/drive/api/v3/mime-types https://developer.mozilla.org/ja/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types

Je souhaite voir diverses informations sur le fichier

* Renvoie toutes les informations Passez les éléments requis séparés par des virgules

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

J'ai téléchargé un fichier mais je ne peux pas y accéder

Probablement pas autorisé, mettons-le Si vous créez un répertoire privilégié à l'avance et que vous le téléchargez dessus, vous n'avez pas besoin de donner l'autorisation à chaque fois.


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

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

Enregistrez le fichier téléchargé dans le chemin spécifié

Écrivons avec 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

Conseils relatifs aux API Google Drive (Python)
astuces python
Importez un fichier JPG à l'aide de l'API Google Drive en Python
Astuces Python
Astuces Python
[Python] Accédez à l'API Google Translation
[Python3] Google translate google translation sans utiliser l'API
Téléchargez des fichiers Google Drive en Python
Utiliser l'API Google Analytics de Python
Conseils Python Conda
Conseils de débogage Python
Astuces de clic Python
Obtenez les données de l'API Google Fit en Python
De manière inattendue (?) Connaissance du bean Python
Utiliser l'API Google Cloud Vision de Python
Créer une feuille de calcul Google à l'aide de l'API Python / Google Data
Télécharger des images sur Google Drive avec Python
Exécutez l'API Google Analytics (core v3) en python
Tweet (API 1.1) avec Google App Engine pour Python
Conseils pour accéder à l'API ATND avec Python
Télécharger des fichiers sur Google Drive avec Lambda (Python)
Astuces Python et Numpy
Déplacement de fichiers Google Drive
Conseils Google Colab Organiser
Conduisez WebDriver avec python
API Evernote en Python
Astuces Python (mon mémo)
Liste des API Python pour OpenCV3
Conseils d'installation de Python PyTorch
API C en Python 3
Mémo de l'API TensorFlow (Python)
Google Drive API Set File Permission (Définir les autorisations sur les fichiers Google Drive)
Faire une copie d'un fichier Google Drive à partir de Python
[Python] Obtenez des données insight à l'aide de l'API Google My Business
Procédure de transcription vocale à l'aide de Python et de l'API Google Cloud Speech
Reconnaissance vocale des fichiers par l'API Google Speech v2 à l'aide de Python
Transférer vers un Drive partagé avec l'API Google Drive V3
Hit API de Mastodon en Python
Utiliser l'API Trello avec python
Conseils pour réfléchir à np.newaxis en Python / Numpy
ls -R sur Google Drive
AWS CDK-Lambda + API Gateway (Python)
API Web EXE par Python
Utiliser l'API Twitter avec Python
Étudiez Python avec Google Colaboratory
Recevoir des conseils d'entrée standard @ python
[Astuces] Gérez Athena avec Python
API Web avec Python + Falcon
Obtenez des données de l'API d'analyse avec le client API Google pour python
API Blender Python dans Houdini (Python 3)
Appelez l'API avec python3.
Montez Google Drive avec google-drive-ocamlfuse
Utiliser l'API subsonique avec python3
[Python + Selenium] Conseils pour le grattage
~ Conseils pour les débutants de Python présentés avec amour par Pythonista ③ ~