| |
| |
| |
| import json |
| import gspread |
| import os |
| import pandas as pd |
| from oauth2client.service_account import ServiceAccountCredentials |
|
|
| def connect_to_sheet(): |
| creds_dict = json.loads(os.environ["GOOGLE_CREDS_JSON"]) |
| scope = [ |
| "https://spreadsheets.google.com/feeds", |
| "https://www.googleapis.com/auth/spreadsheets", |
| "https://www.googleapis.com/auth/drive" |
| ] |
| creds = ServiceAccountCredentials.from_json_keyfile_dict(creds_dict, scope) |
| client = gspread.authorize(creds) |
| sheet = client.open_by_key("109h0Yj8RmKEbWCj5TdJNXXbWhmaVH8o3r3q4_Pa50g8").sheet1 |
| return sheet |
|
|
| def append_score(timestamp, score, filename): |
| sheet = connect_to_sheet() |
| sheet.append_row([timestamp, score, filename]) |
|
|
| def fetch_leaderboard(): |
| sheet = connect_to_sheet() |
| data = sheet.get_all_records() |
| return pd.DataFrame(data) |