[PYTHON] Enregistrez le fichier d'authentification Pydrive dans un répertoire différent du script

Conclusion

Si vous souhaitez enregistrer le fichier d'authentification Pydrive dans un répertoire différent du script, écrivez comme suit.

from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from oauth2client.file import Storage

gauth = GoogleAuth(settings_file=f"{Chemin absolu du répertoire que vous souhaitez enregistrer}/settings.yaml")
gauth.credentials = Storage(f"{Chemin absolu du répertoire que vous souhaitez enregistrer}/credentials.json").get()
gauth.CommandLineAuth()
drive = GoogleDrive(gauth)

Environnement dépendant

python==3.7.6
pydrive==1.3.1

Contexte

introduction

L'utilisation de base et la méthode de réglage de Pydrive sont omises car les sites suivants l'expliquent soigneusement.

Site de référence: Télécharger, télécharger, supprimer Google Drive avec Python, PyDrive, etc. --note.nkmk.me

Par défaut, le fichier d'authentification ne peut pas être enregistré dans un autre répertoire.

Si le fichier d'authentification Pydrive n'est pas enregistré dans le même répertoire où le script est enregistré (par défaut), l'authentification sera NG.

Par exemple, il est indispensable de sauvegarder les fichiers d'authentification client_secrets.json, credentials.json, settings.yaml dans le même répertoire que le script main.py comme indiqué ci-dessous.

/home/hogehoge/
  └ hoge_project/
    └ src/
      ├ client_secrets.json
      ├ credentials.json
      ├ settings.yaml
      └ main.py

main.py


from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive

gauth = GoogleAuth()
gauth.CommandLineAuth()
drive = GoogleDrive(gauth)

Mais je veux l'enregistrer dans un autre répertoire.

Cependant, il est gênant d'avoir un mélange de scripts et de fichiers d'authentification dans le répertoire src. Donc, d'une manière ou d'une autre, je veux déplacer le fichier d'authentification sous le répertoire creds / comme suit.

/home/hogehoge/
  └ hoge_project/
    ├ creds/
    │  ├ client_secrets.json
    │  ├ credentials.json
    │  └ settings.yaml
    │
    └ src/
      └ main.py

En spécifiant un argument, il est possible de lire le fichier d'authentification dans un autre répertoire.

Si vous écrivez comme suit, main.py peut reconnaître le fichier d'authentification sous credits /.

main.py


from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from oauth2client.file import Storage

gauth = GoogleAuth(settings_file=f"/home/hogehoge/creds/settings.yaml")
gauth.credentials = Storage(f"/home/hogehoge/creds/credentials.json").get()
gauth.CommandLineAuth()
drive = GoogleDrive(gauth)

Site de référence: [Notez que vous êtes tombé sur le grattage de python --Qiita](https://qiita.com/nacopon/items/515194278d0aa875cca0#pydrive-crontab%E3%81%A7%E5%AE%9F%E8%A1 % 8C% E3% 81% 99% E3% 82% 8B% E3% 81% A8% E3% 82% A8% E3% 83% A9% E3% 83% BC)

à la fin

J'ai eu du mal à trouver des informations. S'il vous plaît laissez-moi savoir s'il y a autre chose.

Recommended Posts

Enregistrez le fichier d'authentification Pydrive dans un répertoire différent du script
Comment lire des fichiers dans différents répertoires
Enregistrez le modèle pystan et les résultats dans un fichier pickle
Accédez au fichier avec un chemin relatif à partir du script d'exécution.
[Note] Importation de fichiers dans le répertoire parent en Python
Enregistrez le fichier binaire en Python
Enregistrer les fichiers au format YAML avec PyYAML
Traitez le contenu du fichier dans l'ordre avec un script shell
Lisez le fichier en Python avec un chemin relatif depuis le programme
[Note] Lire un fichier depuis un autre répertoire
Script pour générer un répertoire à partir d'un fichier json
Exécuter l'interpréteur Python dans le script
Remplacez le nom du répertoire et le nom du fichier dans le répertoire par une commande Linux.
Afficher le chemin complet (chemin absolu) d'un fichier dans un répertoire sous Linux Bash
Extraire uniquement le nom du fichier à l'exclusion du répertoire dans le répertoire
Enregistrer l'objet dans un fichier avec pickle
Appel de scripts Python à partir de Python intégré en C ++ / C ++
Accédez aux variables définies dans le script depuis REPL
Enregistrez les conditions de paramétrage sous forme de fichier CSV à l'aide de UDF Manager avec OCTA
Obtenir le nom de fichier dans un dossier à l'aide de glob
Un mémorandum pour exécuter un script python dans un fichier bat
Script Python qui crée un fichier JSON à partir d'un fichier CSV
Créez un script pour votre compétence Pepper dans une feuille de calcul et chargez SayText directement à partir du script
[Sublime Text 2] Toujours exécuter un fichier spécifique dans le projet
Changer la destination de sortie standard en un fichier en Python
Différent du type d'importation de python. Signification de depuis A import B
Remarques sur l'intégration du langage de script dans les scripts bash
Remarque 2 pour intégrer le langage de script dans un script bash
Traitez les fichiers du dossier dans l'ordre avec le script shell
J'ai écrit un script qui divise l'image en deux
Accès aux fichiers sous le répertoire
Paramètres d'exécution d'un test à chaque fois que vous enregistrez un fichier dans l'éditeur à l'aide de watchmedo (chien de garde)
Exporter la liste de clés incluse dans S3 Bucket dans un fichier
Recherchez le nom du fichier, y compris le mot et l'extension spécifiés dans le répertoire
Branche conditionnelle en raison de l'existence d'un fichier de script shell
Créez un script shell pour exécuter le fichier python plusieurs fois
Quoi qu'il en soit, le journal de communication série le plus rapide est laissé dans le fichier
Sortie de la ligne contenant la chaîne de caractères spécifiée à partir du fichier texte
Creusez le répertoire et créez une liste de chemins de répertoire + noms de fichiers
Obtenez la formule dans le fichier Excel sous forme de chaîne en Python
Obtenez les conditions de simulation OCTA à partir d'un fichier et enregistrez avec les pandas
Exécuter un script multiligne dans un PDB
Exécuter le script Python à partir du fichier de commandes
Obtenez le chemin du script en Python
Créer un fichier binaire en Python
L'histoire du "trou" dans le fichier
Un mémo organisé en renommant les noms de fichiers dans le dossier avec python
Comment spécifier un fichier .ui dans la boîte de dialogue / interface graphique du widget dans PySide
Extraire les lignes qui correspondent aux conditions d'un fichier texte avec python
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
J'ai créé un script pour vérifier si l'anglais est entré dans la position spécifiée du fichier JSON en Python.
Comment enregistrer les informations de point caractéristique de l'image dans un fichier et l'utiliser pour la mise en correspondance
[Décompresser] Comment décompresser uniquement les fichiers arbitraires de ceux avec des délimiteurs de répertoire antislashés dans les fichiers zip