Skip to content

Commit

Permalink
Merge pull request #55 from ES2-UFPI/dev
Browse files Browse the repository at this point in the history
Final Merging
  • Loading branch information
luishmq authored Jul 23, 2024
2 parents 117de7f + 94594c4 commit 80e2a7f
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 7 deletions.
5 changes: 3 additions & 2 deletions Home.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import login as login
import profile

from pages.Profile import profile_page
from login import login_page

def main():
Expand All @@ -10,9 +11,9 @@ def main():

if st.session_state.page == 'login':
show_home_page()
login.login_page()
login_page()
elif st.session_state.page == 'profile':
profile.profile_page()
profile_page()

def show_home_page():
st.title("MyGameHub 🕹️")
Expand Down
5 changes: 3 additions & 2 deletions pages/👤 Profile.py → pages/Profile.py
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ def profile_page():
else:
st.write("Você ainda não fez nenhuma avaliação.")

elif settings_mode == "Configurações de Conta":
else:
st.header("Configurações de Conta")

with st.form("account_settings"):
Expand All @@ -146,7 +146,8 @@ def profile_page():
st.write("---")
st.write("### Deletar Conta")
if st.button("Deletar Conta"):
if st.confirm("Tem certeza de que deseja deletar sua conta? Esta ação não pode ser desfeita."):
confirm_delete = st.checkbox("Confirmar Deleção de Conta")
if confirm_delete:
delete_account(user.id)
st.session_state.clear()
st.success("Conta deletada com sucesso. Por favor, feche o aplicativo.")
Expand Down
29 changes: 28 additions & 1 deletion pages/🧠 Reviews.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import streamlit as st
import pandas as pd
import plotly.graph_objects as go
from transformers import pipeline

def load_custom_css():
with open('src/data/styleReviews.css') as f:
Expand Down Expand Up @@ -63,6 +64,17 @@ def add_review(reviews, novo_review):
save_reviews(reviews)
return reviews

def analyze_sentiment(text):
sentiment_pipeline = pipeline("sentiment-analysis", model="nlptown/bert-base-multilingual-uncased-sentiment")
result = sentiment_pipeline(text)[0]
label = result['label']
if label == '1 star' or label == '2 stars':
return 'Negative'
elif label == '5 stars' or label == '4 stars':
return 'Positive'
else:
return 'Neutral'

def main():
st.title("Avaliação de Jogos")
st.sidebar.markdown("# Reviews 🧠")
Expand Down Expand Up @@ -91,14 +103,25 @@ def main():
comentario = st.text_area("Comentário")
favorito = st.checkbox("Favoritar este jogo")

if st.button("Analisar Sentimento"):
sentimento = analyze_sentiment(comentario)
if sentimento == 'Positive':
st.success("O sentimento do comentário é positivo!")
elif sentimento == 'Negative':
st.error("O sentimento do comentário é negativo.")
else:
st.info("O sentimento do comentário é neutro.")

# Submissão de avaliação
if st.button("Enviar Avaliação"):
sentimento = analyze_sentiment(comentario)
novo_review = {
"jogo_id": jogo_id,
"usuario": usuario,
"nota": nota,
"comentario": comentario,
"favorito": favorito
"favorito": favorito,
"sentimento": sentimento # Adiciona o sentimento ao review
}
reviews = add_review(reviews, novo_review)
st.success("Avaliação enviada com sucesso!")
Expand All @@ -109,6 +132,10 @@ def main():
if avaliacoes_filtradas.empty:
st.write("Ainda não há avaliações para este jogo.")
else:
# Adiciona a coluna de sentimento, se não existir
if 'sentimento' not in avaliacoes_filtradas.columns:
avaliacoes_filtradas['sentimento'] = avaliacoes_filtradas['comentario'].apply(analyze_sentiment)
save_reviews(reviews) # Salva as mudanças no arquivo
st.write(avaliacoes_filtradas)

if st.button("Mostrar Gráfico com Plotly"):
Expand Down
9 changes: 7 additions & 2 deletions src/data/reviews.csv
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
jogo_id,usuario,nota,comentario,favorito
2,Luis,10,Eu amo!,True
jogo_id,usuario,nota,comentario,favorito,sentimento
2,Luis,10,Eu amo!,True,
1,luishmq,5,,False,
1,luishmq,8,Jogo muito bom!,False,
1,luishmq,8,Jogo excelente!,True,Positive
2,luis,2,Jogo ruim demais...,False,Negative
4,luishmq,1,Jogo horrível,False,Negative

0 comments on commit 80e2a7f

Please sign in to comment.