-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathRotina.py
117 lines (85 loc) · 2.74 KB
/
Rotina.py
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
import streamlit as st
import pandas as pd
from datetime import datetime, timedelta, timezone
import time
import random
import streamlit as st
st.set_page_config(
page_title="Rotina Cavalesca",
page_icon="📅",
layout="wide",
initial_sidebar_state="expanded",
menu_items={
'About': "# App de rotinas. feito de *juan* para *juan*!"
}
)
# Obtenha a data e hora atual
agora = datetime.now()
diferenca = timedelta(hours=-3)
fuso_horario = timezone(diferenca)
agora = agora.astimezone(fuso_horario)
# Extraia os componentes da data e hora
dia = agora.day
ano = agora.year
mês = agora.month
def obter_saudacao():
hora_atual = (datetime.now().astimezone(fuso_horario)).hour
if 6 <= hora_atual < 12:
return "Bom dia"
elif 12 <= hora_atual < 18:
return "Boa tarde"
elif 18 <= hora_atual < 24:
return "Boa noite"
else:
return "Boa madrugada"
sem = ("Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado", "Domingo")
# Crie uma instância de datetime com os componentes de data
data_atual = datetime(ano, mês, dia)
data_ITA = datetime(2024, 12, 20)
# Verifique que dia é hoje de acordo com o padrão de data em inglês ex:(2021/05/10)
num = data_atual.weekday()
dia_semanal = sem[num]
# Carrega os dados do arquivo CSV
data_day = pd.read_csv(f'./csvs/{dia_semanal.lower()}.csv', encoding='utf-8')
plot_hora = st.empty()
saudacao = obter_saudacao()
st.title(f"{saudacao}, Juan! :sunglasses:")
st.subheader(f':face_with_cowboy_hat: {dia_semanal} :face_with_cowboy_hat:')
# Mostra os dados do DataFrame do dia
st.write(data_day)
st.divider()
st.title(':stars: Sonhos :sparkles:')
#Sonhos
st.subheader(f':date: Faltam {(data_ITA - data_atual).days} dias para a P3 OBA :first_place_medal:')
st.divider()
#Rotina Domingo
st.title('Rotina Domingo')
st.dataframe(pd.read_csv('./csvs/domingo.csv', encoding='utf-8'))
st.divider()
#Rotina Segunda
st.title('Rotina Segunda')
st.dataframe(pd.read_csv('./csvs/segunda.csv', encoding='utf-8'))
st.divider()
#Rotina Terça
st.title('Rotina Terça')
st.dataframe(pd.read_csv('./csvs/terça.csv', encoding='utf-8'))
st.divider()
#Rotina Quarta
st.title('Rotina Quarta')
st.dataframe(pd.read_csv('./csvs/quarta.csv', encoding='utf-8'))
st.divider()
#Rotina Quinta
st.title('Rotina Quinta')
st.dataframe(pd.read_csv('./csvs/quinta.csv', encoding='utf-8'))
st.divider()
#Rotina Sexta
st.title('Rotina Sexta')
st.dataframe(pd.read_csv('./csvs/sexta.csv', encoding='utf-8'))
st.divider()
#Rotina Sábado
st.title('Rotina Sábado')
st.dataframe(pd.read_csv('./csvs/sábado.csv', encoding='utf-8'))
@st.fragment(run_every=1)
def exibir_hora():
plot_hora.title(f":alarm_clock:{((datetime.now()).astimezone(fuso_horario)).strftime('%H:%M')}")
exibir_hora()