[PYTHON] Speichern Sie die Pydrive-Authentifizierungsdatei in einem anderen Verzeichnis als das Skript

Fazit

Wenn Sie die Pydrive-Authentifizierungsdatei in einem anderen Verzeichnis als dem Skript speichern möchten, schreiben Sie wie folgt.

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

gauth = GoogleAuth(settings_file=f"{Absoluter Pfad des Verzeichnisses, das Sie speichern möchten}/settings.yaml")
gauth.credentials = Storage(f"{Absoluter Pfad des Verzeichnisses, das Sie speichern möchten}/credentials.json").get()
gauth.CommandLineAuth()
drive = GoogleDrive(gauth)

Abhängige Umgebung

python==3.7.6
pydrive==1.3.1

Hintergrund

Einführung

Die grundlegende Verwendung und Einstellungsmethode von Pydrive entfällt, da die folgenden Websites dies sorgfältig erläutern.

Referenzseite: Google Drive mit Python, PyDrive usw. herunterladen, hochladen, löschen - --note.nkmk.me

Standardmäßig kann die Authentifizierungsdatei nicht in einem anderen Verzeichnis gespeichert werden.

Wenn die Pydrive-Authentifizierungsdatei nicht in demselben Verzeichnis gespeichert ist, in dem das Skript gespeichert ist (standardmäßig), lautet die Authentifizierung NG.

Zum Beispiel ist es ein Muss, die Authentifizierungsdateien "client_secrets.json", "credentials.json", "settings.yaml" im selben Verzeichnis wie das Skript "main.py" zu speichern, wie unten gezeigt.

/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)

Aber ich möchte es in einem anderen Verzeichnis speichern.

Es ist jedoch unangenehm, eine Mischung aus Skripten und Authentifizierungsdateien im Verzeichnis "src" zu haben. Irgendwie möchte ich die Authentifizierungsdatei wie folgt in das Verzeichnis "creds /" verschieben.

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

Durch Angabe eines Arguments ist es möglich, die Authentifizierungsdatei in einem anderen Verzeichnis zu lesen.

Wenn Sie wie folgt schreiben, kann main.py die Authentifizierungsdatei unter Credits / erkennen.

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)

Referenzseite: [Beachten Sie, dass Sie auf Python-Scraping gestoßen sind - 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)

schließlich

Es fiel mir schwer, Informationen zu finden. Bitte lassen Sie mich wissen, wenn es noch etwas gibt.

Recommended Posts

Speichern Sie die Pydrive-Authentifizierungsdatei in einem anderen Verzeichnis als das Skript
So lesen Sie Dateien in verschiedenen Verzeichnissen
Speichern Sie das Pystan-Modell und erhalten Sie eine Pickle-Datei
Greifen Sie über das Ausführungsskript mit einem relativen Pfad auf die Datei zu.
[Hinweis] Import von Dateien in das übergeordnete Verzeichnis in Python
Speichern Sie die Binärdatei in Python
Speichern Sie YAML-formatierte Dateien mit PyYAML
Verarbeiten Sie den Inhalt der Datei der Reihe nach mit einem Shell-Skript
Lesen Sie die Datei in Python mit einem relativen Pfad aus dem Programm
[Hinweis] Lesen Sie eine Datei aus einem anderen Verzeichnis
Skript zum Generieren eines Verzeichnisses aus einer JSON-Datei
Führen Sie den Python-Interpreter im Skript aus
Ersetzen Sie den Verzeichnisnamen und den Dateinamen im Verzeichnis zusammen mit einem Linux-Befehl.
Zeigen Sie den vollständigen Pfad (absoluten Pfad) einer Datei in einem Verzeichnis in Linux Bash an
Extrahieren Sie nur den Dateinamen mit Ausnahme des Verzeichnisses im Verzeichnis
Speichern Sie das Objekt in einer Datei mit pickle
Rufen Sie Python-Skripte aus Embedded Python in C ++ / C ++ auf
Greifen Sie über REPL auf die im Skript definierten Variablen zu
Speichern Sie die Einstellungsbedingungen als CSV-Datei mit UDF Manager mit OCTA
Abrufen des Dateinamens in einem Ordner mithilfe von glob
Ein Memorandum zum Ausführen eines Python-Skripts in einer Bat-Datei
Python-Skript, das eine JSON-Datei aus einer CSV-Datei erstellt
Erstellen Sie ein Skript für Ihre Pepper-Fertigkeit in einer Tabelle und laden Sie SayText direkt aus dem Skript
[Sublime Text 2] Führen Sie immer eine bestimmte Datei im Projekt aus
Ändern Sie das Standardausgabeziel in eine Datei in Python
Anders als der Importtyp von Python. Bedeutung von aus A Import B.
Hinweise zum Einbetten der Skriptsprache in Bash-Skripte
Hinweis 2 zum Einbetten der Skriptsprache in ein Bash-Skript
Verarbeiten Sie die Dateien im Ordner in der Reihenfolge mit dem Shell-Skript
Ich habe ein Skript geschrieben, das das Bild in zwei Teile teilt
Dateizugriff unter dem Verzeichnis
Einstellungen zum Ausführen eines Tests jedes Mal, wenn Sie eine Datei mit watchmedo (watchdog) im Editor speichern
Geben Sie die in S3 Bucket enthaltene Schlüsselliste in eine Datei aus
Suchen Sie den Dateinamen einschließlich des angegebenen Wortes und der angegebenen Erweiterung im Verzeichnis
Bedingte Verzweigung aufgrund des Vorhandenseins einer Shell-Skriptdatei
Erstellen Sie ein Shell-Skript, um die Python-Datei mehrmals auszuführen
Auf jeden Fall bleibt das schnellste serielle Kommunikationsprotokoll in der Datei
Geben Sie die Zeile mit der angegebenen Zeichenfolge aus der Textdatei aus
Durchsuchen Sie das Verzeichnis und erstellen Sie eine Liste mit Verzeichnispfaden und Dateinamen
Rufen Sie die Formel in der Excel-Datei als Zeichenfolge in Python ab
Holen Sie sich OCTA-Simulationsbedingungen aus einer Datei und speichern Sie sie mit Pandas
Führen Sie ein mehrzeiliges Skript in einem PDB aus
Führen Sie das Python-Skript aus der Batchdatei aus
Holen Sie sich den Skriptpfad in Python
Erstellen Sie eine Binärdatei in Python
Die Geschichte des "Lochs" in der Akte
Ein Memo, das durch Umbenennen der Dateinamen im Ordner mit Python organisiert wird
So geben Sie eine .ui-Datei in der Dialog- / Widget-GUI in PySide an
Extrahieren Sie mit Python Zeilen, die den Bedingungen entsprechen, aus einer Textdatei
Ich habe ein Programm erstellt, um die Größe einer Datei mit Python zu überprüfen
Ich habe ein Skript erstellt, um zu überprüfen, ob an der angegebenen Position der JSON-Datei in Python Englisch eingegeben wird.
So speichern Sie die Feature-Point-Informationen des Bildes in einer Datei und verwenden sie zum Abgleichen
[Entpacken] So dekomprimieren Sie nur beliebige Dateien von Dateien mit umgekehrten Verzeichnisbegrenzern in Zip-Dateien