miltonc commited on
Commit
f7474b1
·
verified ·
1 Parent(s): adc8103

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -11
app.py CHANGED
@@ -40,6 +40,17 @@ def translate_text(text_to_translate, target_language='en', source_language='zh-
40
  time.sleep(delay)
41
  return "Translation Failed"
42
 
 
 
 
 
 
 
 
 
 
 
 
43
  # Main Streamlit app
44
  def main():
45
  st.title("AI-Powered Sentiment Analysis and Summarization")
@@ -48,18 +59,18 @@ def main():
48
 
49
  text = st.text_area("Enter the Chinese text here.....", height=200) # Changed from file_uploader to text_area
50
 
51
- if text: # check if text is not empty
52
- # google translate package
53
- with st.spinner("Analyzing sentiment..."):
54
- text_en = translate_text(text, target_language='en', source_language='zh-TW', delay=1)
55
- sentiment_output = sentiment_analysis(text_en, sentiment_analyzer)
56
- st.write("### Sentiment:")
57
- st.write(sentiment_output)
58
 
59
- with st.spinner("Summarizing News..."):
60
- story = summarize_news(text, summarizer)
61
- st.write("### Summarized News:")
62
- st.write(story)
63
 
64
  if __name__ == "__main__":
65
  main()
 
40
  time.sleep(delay)
41
  return "Translation Failed"
42
 
43
+
44
+ def translate_text(text, target_language='en', source_language='zh-TW'):
45
+ translator = Translator(to_lang=target_language, from_lang=source_language)
46
+ try:
47
+ translation = translator.translate(text)
48
+ return translation
49
+ except Exception as e:
50
+ print(f"Translation error for '{text}': {e}. Returning 'Translation Failed'")
51
+ return "Translation Failed"
52
+
53
+
54
  # Main Streamlit app
55
  def main():
56
  st.title("AI-Powered Sentiment Analysis and Summarization")
 
59
 
60
  text = st.text_area("Enter the Chinese text here.....", height=200) # Changed from file_uploader to text_area
61
 
62
+ if st.button("Analyze"): # Added a button
63
+ if text:
64
+ with st.spinner("Analyzing sentiment..."):
65
+ text_en = translate_text(text, target_language='en', source_language='zh-TW', delay=1)
66
+ sentiment_output = sentiment_analysis(text_en, sentiment_analyzer)
67
+ st.write("### Sentiment:")
68
+ st.write(sentiment_output)
69
 
70
+ with st.spinner("Summarizing News..."):
71
+ story = summarize_news(text, summarizer)
72
+ st.write("### Summarized News:")
73
+ st.write(story)
74
 
75
  if __name__ == "__main__":
76
  main()