In diesem Artikel werde ich die Einrichtung von Authentifizierungsinformationen und Kommunikationsbestätigungen erläutern, die erforderlich sind, wenn Google Slides / Tabellenkalkulationen / Dokumentation / Google Mail mit API in Python betrieben werden. (Benötigte Zeit ca. 20 Minuten)
Bitte beachten Sie, dass die Architektur der Google Cloud Platform selbst ständig aktualisiert wird, sodass dieser Artikel von der tatsächlichen GUI und UX abweichen kann. (Spätestens ab dem 4. November 2019)
In diesem Artikel verwenden wir als Vertreter der G Suite-APIs die Sheets-API, die als Beispiel Spread Sheets aufruft.
Rufen Sie die Seite rechts auf. Sheets API Python Quick Start
Klicken Sie oben rechts auf dem Bildschirm auf "Anmelden" und melden Sie sich mit Ihrem eigenen Google-Konto an.
Klicken Sie auf "Google Sheets-API aktivieren", um die API zu aktivieren.
Bestätigen Sie die Vereinbarung, aktivieren Sie das Optionsfeld "Ja" und drücken Sie "WEITER". Der Projektname lautet standardmäßig "Schnellstart", kann aber beliebig sein.
Klicken Sie auf "CLIENT CONFIGRATION HERUNTERLADEN".
credentials.json wird heruntergeladen.
Damit ist die Einrichtung der Anmeldeinformationen abgeschlossen. Wenn Sie die Authentifizierungskommunikation bestätigen möchten, führen Sie die folgenden Schritte aus.
Installieren Sie die erforderlichen Bibliotheken mit pip install.
b. Erstellen Sie eine py-Datei mit dem Namen quickstart.py in einem beliebigen Verzeichnis und kopieren Sie den folgenden Code und fügen Sie ihn ein.
quickstart.py
from __future__ import print_function
import pickle
import os.path
from googleapiclient.discovery import build
from google_auth_oauthlib.flow import InstalledAppFlow
from google.auth.transport.requests import Request
# If modifying these scopes, delete the file token.pickle.
SCOPES = ['https://www.googleapis.com/auth/spreadsheets.readonly']
# The ID and range of a sample spreadsheet.
SAMPLE_SPREADSHEET_ID = '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'
SAMPLE_RANGE_NAME = 'Class Data!A2:E'
def main():
"""Shows basic usage of the Sheets API.
Prints values from a sample spreadsheet.
"""
creds = None
# The file token.pickle stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists('token.pickle'):
with open('token.pickle', 'rb') as token:
creds = pickle.load(token)
# If there are no (valid) credentials available, let the user log in.
if not creds or not creds.valid:
if creds and creds.expired and creds.refresh_token:
creds.refresh(Request())
else:
flow = InstalledAppFlow.from_client_secrets_file(
'credentials.json', SCOPES)
creds = flow.run_local_server(port=0)
# Save the credentials for the next run
with open('token.pickle', 'wb') as token:
pickle.dump(creds, token)
service = build('sheets', 'v4', credentials=creds)
# Call the Sheets API
sheet = service.spreadsheets()
result = sheet.values().get(spreadsheetId=SAMPLE_SPREADSHEET_ID,
range=SAMPLE_RANGE_NAME).execute()
values = result.get('values', [])
if not values:
print('No data found.')
else:
print('Name, Major:')
for row in values:
# Print columns A and E, which correspond to indices 0 and 4.
print(row)
if __name__ == '__main__':
main()
c. Legen Sie die heruntergeladenen Anmeldeinformationen.json in dasselbe Verzeichnis wie die von Ihnen erstellte Datei quickstart.py.
d. Wechseln Sie in das Verzeichnis, in dem quickstart.py vorhanden ist, und führen Sie es mit dem folgenden Befehl aus.
python quickstart.py
Ermöglichen Sie die Authentifizierung, wenn ein Bildschirm angezeigt wird, der den Zugriff auf den Webbrowser ermöglicht.
f. Wenn das Ergebnis auf dem Ausführungsbildschirm der py-Datei ausgegeben wird, ist es erfolgreich.
08.11.2019: Der Titel wurde bearbeitet
Recommended Posts