File size: 1,337 Bytes
5cf30f9 fe24d2d 655bd82 5cf30f9 5ba6075 5cf30f9 5ba6075 5cf30f9 5ba6075 5cf30f9 fe24d2d 5ba6075 fe24d2d 5cf30f9 fe24d2d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
import os
import time
import pandas as pd
import gradio as gr
def download_sheet_df(doc_id, sheet_id=0, header=0):
sheet_url = f'https://docs.google.com/spreadsheets/d/{doc_id}/export?format=csv&gid={sheet_id}'
return pd.read_csv(sheet_url, header=header)
df = download_sheet_df(os.environ["SHEET_ID_SECRET"])
def find_reviews(uid):
review_list = []
rows = []
try:
for reviewer_n in [1, 2, 3, 4]:
df_u = df[df[f"Reviewer_{reviewer_n}_UID_NUMBER_myucla"].astype(int) == int(uid)].copy()
if len(df_u) == 1 and str(df_u.iloc[0]["Question 1 Response Edited"]) != "nan":
rows.append(df_u.iloc[0]["Unnamed: 0"])
review_list.append(df_u.iloc[0][["Full_Name_myucla", "Question 1 Response Edited"]])
except ValueError:
pass
except Exception as e:
raise e
if len(review_list) == 0:
review_list = pd.DataFrame([{"Error": "UID Not Found"}])
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), f"Not Found uid: [{uid}]")
else:
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), "Found rows:", sorted(rows))
return review_list[:3]
demo = gr.Interface(
fn=find_reviews,
inputs="text",
outputs=gr.Dataframe(headers=["Name", "Presentation Path"]),
)
demo.launch(debug=False) |