pentarosarium commited on
Commit
4bd6649
·
1 Parent(s): 46fe2a8

negative/positive display

Browse files
Files changed (1) hide show
  1. app.py +32 -25
app.py CHANGED
@@ -627,29 +627,35 @@ class ProcessingUI:
627
  'time': datetime.now().strftime('%H:%M:%S')
628
  }
629
 
630
- st.session_state.recent_items.insert(0, new_item)
631
- st.session_state.recent_items = st.session_state.recent_items[:10] # Keep last 10 items
632
-
 
 
 
 
 
 
 
 
 
633
  # Display items using Streamlit components
634
- with self.recent_items_container:
635
- for item in st.session_state.recent_items:
636
- if item['sentiment'] in ['Positive', 'Negative']:
637
- # Use different background colors for different sentiments
638
- background_color = "#ffebee" if item['sentiment'] == 'Negative' else "#e8f5e9"
 
 
 
 
639
 
640
- # Create container for each item
641
- with st.container():
642
- st.markdown("""---""") # Separator
643
- # Entity name in bold
644
- st.markdown(f"**{item['entity']}**")
645
- # Headline
646
- st.write(item['headline'])
647
- # Metadata row
648
- meta = f"_{item['sentiment']}"
649
- if item['event_type'] != 'Нет':
650
- meta += f" | Событие: {item['event_type']}"
651
- meta += f" | {item['time']}_"
652
- st.markdown(meta)
653
 
654
  def setup_main_metrics_tab(self):
655
  """Setup the main metrics display with updated styling"""
@@ -660,9 +666,10 @@ class ProcessingUI:
660
  self.events_count = metrics_cols[2].empty()
661
  self.speed_metric = metrics_cols[3].empty()
662
 
663
- # Recent items container
664
- st.markdown("### Последние новости:")
665
- self.recent_items_container = st.container()
 
666
 
667
  def _update_entity_view(self):
668
  """Update entity tab visualizations"""
@@ -1559,7 +1566,7 @@ def main():
1559
  st.set_page_config(layout="wide")
1560
 
1561
  with st.sidebar:
1562
- st.title("::: AI-анализ мониторинга новостей (v.4.2):::")
1563
  st.subheader("по материалам СКАН-ИНТЕРФАКС")
1564
 
1565
  model_choice = st.radio(
 
627
  'time': datetime.now().strftime('%H:%M:%S')
628
  }
629
 
630
+ # Update the list in session state
631
+ if not any(
632
+ item['entity'] == new_item['entity'] and
633
+ item['headline'] == new_item['headline']
634
+ for item in st.session_state.recent_items
635
+ ):
636
+ st.session_state.recent_items.insert(0, new_item)
637
+ st.session_state.recent_items = st.session_state.recent_items[:10] # Keep last 10 items
638
+
639
+ # Clear and redisplay items
640
+ self.recent_items_container.empty()
641
+
642
  # Display items using Streamlit components
643
+ for item in st.session_state.recent_items:
644
+ if item['sentiment'] in ['Positive', 'Negative']:
645
+ # Create the display style based on sentiment
646
+ sentiment_color = "🔴" if item['sentiment'] == 'Negative' else "🟢"
647
+ event_icon = "📅" if item['event_type'] != 'Нет' else ""
648
+
649
+ self.recent_items_container.markdown(
650
+ f"""
651
+ {sentiment_color} **{item['entity']}** {event_icon}
652
 
653
+ {item['headline']}
654
+
655
+ *{item['sentiment']}* {f" | Событие: {item['event_type']}" if item['event_type'] != 'Нет' else ""} | {item['time']}
656
+
657
+ ---
658
+ """)
 
 
 
 
 
 
 
659
 
660
  def setup_main_metrics_tab(self):
661
  """Setup the main metrics display with updated styling"""
 
666
  self.events_count = metrics_cols[2].empty()
667
  self.speed_metric = metrics_cols[3].empty()
668
 
669
+ # Create container for recent items
670
+ st.markdown("### Негативные/позитивные:")
671
+ self.recent_items_container = st.empty()
672
+
673
 
674
  def _update_entity_view(self):
675
  """Update entity tab visualizations"""
 
1566
  st.set_page_config(layout="wide")
1567
 
1568
  with st.sidebar:
1569
+ st.title("::: AI-анализ мониторинга новостей (v.4.3):::")
1570
  st.subheader("по материалам СКАН-ИНТЕРФАКС")
1571
 
1572
  model_choice = st.radio(