Windows (CMDer):
λ pip install oauth2client gspread
Linux:
$ sudo pip install oauth2client gspread
bzw. bei mehreren Python Versionen auf dem System:
$ sudo pip3.6 install oauth2client gspread
########################################################### | |
# © 2017 zekro Development # | |
# dev.zekro.de - github.com/zekrotja # | |
# Please read following policy before using this code: # | |
# http://s.zekro.de/codepolicy # | |
########################################################### | |
import gspread | |
from oauth2client.service_account import ServiceAccountCredentials | |
# "Sagt" der Google API auf welche Schnittstelle ihr zugreifen wollt | |
scope = ['https://spreadsheets.google.com/feeds'] | |
# Setzt die Credentials aus der JSON-File und dem Scope zusammen | |
credentials = ServiceAccountCredentials.from_json_keyfile_name('gsecrets.json', scope) | |
# Anmelden bei der Google API | |
gc = gspread.authorize(credentials) | |
# Zugriff auf Tabelle "yt-tut" (Tabellensheet 1) | |
table = gc.open("yt-tut").sheet1 | |
def getCellValue(row, col): | |
""" | |
Returnt den Wert der Zelle mit den angegebenen Koordinaten. | |
""" | |
return table.cell(row, col).value | |
def setCellValue(row, col, value): | |
""" | |
Setzt den Wert der Zelle mit den angegeb. Koordinaten auf den | |
angegebenen Wert. | |
""" | |
table.update_cell(row, col, value) | |
def setRowValues(row, values): | |
""" | |
Setzt alle Werte in einem Array nacheinander in die Zellen einer | |
Zeile ein. | |
""" | |
for i, v in enumerate(values): | |
setCellValue(row, i + 1, v) | |
def getNextRow(): | |
""" | |
Findet die letzte leere Zeile der Tabelle. | |
""" | |
count = 1 | |
while len(table.row_values(count)[0]) > 0: | |
count += 1 | |
return count | |
def append(values): | |
""" | |
Setzt in die Zellen der letzen leeren Zeile alle Values eines | |
angegebenen Arrays nacheinander in die Zellen ein. | |
""" | |
setRowValues(getNextRow(), values) | |
# test = [ | |
# ["A1", "B1", "C1"], | |
# ["A2", "B2", "C2"], | |
# ["A3", "B3", "C3"] | |
# ] | |
# for v in test: | |
# append(v) |