Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1,9 +1,6 @@
|
|
1 |
import gradio as gr
|
2 |
import webbrowser
|
3 |
-
import os
|
4 |
from datetime import datetime
|
5 |
-
from gtts import gTTS
|
6 |
-
import playsound
|
7 |
|
8 |
# ๊ธ๋ก๋ฒ ๋ณ์ ์ด๊ธฐํ
|
9 |
search_history = [] # ๊ฒ์ ๊ธฐ๋ก์ ์ ์ฅํ๊ธฐ ์ํ ๋ฆฌ์คํธ
|
@@ -11,7 +8,7 @@ search_history = [] # ๊ฒ์ ๊ธฐ๋ก์ ์ ์ฅํ๊ธฐ ์ํ ๋ฆฌ์คํธ
|
|
11 |
# ๊ฒ์ ํจ์ ์ ์
|
12 |
def search_and_update_history(keyword):
|
13 |
if not keyword:
|
14 |
-
return "๊ฒ์์ด๋ฅผ ์
๋ ฅํ์ธ์.", ""
|
15 |
|
16 |
# ์ผ๋ณธ์ด๋ก ๋ฒ์ญ๋ ํค์๋ ์์ฑ (์ด ๋ถ๋ถ์ ์ค์ ๋ฒ์ญ API ์ฌ์ฉ ๋๋ ๋์ฒด ๋ก์ง์ผ๋ก ์์ ๊ฐ๋ฅ)
|
17 |
japanese_keyword = keyword # ์ด ๋ถ๋ถ์ ๋จ์ํ๋ ์์์
๋๋ค.
|
@@ -20,24 +17,14 @@ def search_and_update_history(keyword):
|
|
20 |
# ๊ฒ์ ๊ธฐ๋ก ์ ์ฅ
|
21 |
save_search_history(keyword, japanese_keyword, url)
|
22 |
|
23 |
-
# ์ผ๋ณธ์ด ์์ฑ ์์ฑ ๋ฐ ์ฌ์
|
24 |
-
audio_path = generate_audio(japanese_keyword)
|
25 |
-
|
26 |
# ๊ฒฐ๊ณผ ๋ฐํ
|
27 |
-
return f"๊ฒ์์ด: {keyword}\n์ผ๋ณธ์ด: {japanese_keyword}\n\n[์ผ๋ฌ์คํธ ๋ณด๋ฌ๊ฐ๊ธฐ]({url})", url
|
28 |
|
29 |
# ๊ฒ์ ๊ธฐ๋ก ์ ์ฅ ํจ์
|
30 |
def save_search_history(keyword, japanese_keyword, url):
|
31 |
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
32 |
search_history.append((timestamp, keyword, japanese_keyword, url))
|
33 |
|
34 |
-
# ์ผ๋ณธ์ด ์์ฑ ์์ฑ ํจ์
|
35 |
-
def generate_audio(japanese_keyword):
|
36 |
-
audio_path = "japanese_audio.mp3"
|
37 |
-
tts = gTTS(text=japanese_keyword, lang='ja')
|
38 |
-
tts.save(audio_path)
|
39 |
-
return audio_path
|
40 |
-
|
41 |
# ๊ฒ์ ๊ธฐ๋ก ์กฐํ ํจ์
|
42 |
def load_search_history():
|
43 |
return [f"{record[0]} - {record[1]}: {record[2]} (๋งํฌ: {record[3]})" for record in search_history]
|
@@ -45,7 +32,7 @@ def load_search_history():
|
|
45 |
# ๊ฒ์ ๊ธฐ๋ก ์ฌ๊ฒ์ ํจ์
|
46 |
def replay_history(selected_item):
|
47 |
if not selected_item:
|
48 |
-
return "๊ฒ์ ๊ธฐ๋ก์ ์ ํํ์ธ์.", ""
|
49 |
keyword = selected_item.split(" - ")[1].split(":")[0]
|
50 |
return search_and_update_history(keyword)
|
51 |
|
@@ -97,7 +84,7 @@ with gr.Blocks() as app:
|
|
97 |
search_button.click(
|
98 |
search_and_update_history,
|
99 |
inputs=[keyword_input],
|
100 |
-
outputs=[result_output
|
101 |
)
|
102 |
|
103 |
# ๊ฒ์ ๊ธฐ๋ก ๋๋กญ๋ค์ด ์
๋ฐ์ดํธ
|
@@ -114,12 +101,5 @@ with gr.Blocks() as app:
|
|
114 |
outputs=[result_output]
|
115 |
)
|
116 |
|
117 |
-
# ์์ฑ ์ฌ์ ๋ฒํผ ํด๋ฆญ ์ด๋ฒคํธ ์ฒ๋ฆฌ
|
118 |
-
history_output.change(
|
119 |
-
replay_history,
|
120 |
-
inputs=[history_output],
|
121 |
-
outputs=[result_output],
|
122 |
-
)
|
123 |
-
|
124 |
# ์ฑ ์คํ
|
125 |
app.launch()
|
|
|
1 |
import gradio as gr
|
2 |
import webbrowser
|
|
|
3 |
from datetime import datetime
|
|
|
|
|
4 |
|
5 |
# ๊ธ๋ก๋ฒ ๋ณ์ ์ด๊ธฐํ
|
6 |
search_history = [] # ๊ฒ์ ๊ธฐ๋ก์ ์ ์ฅํ๊ธฐ ์ํ ๋ฆฌ์คํธ
|
|
|
8 |
# ๊ฒ์ ํจ์ ์ ์
|
9 |
def search_and_update_history(keyword):
|
10 |
if not keyword:
|
11 |
+
return "๊ฒ์์ด๋ฅผ ์
๋ ฅํ์ธ์.", ""
|
12 |
|
13 |
# ์ผ๋ณธ์ด๋ก ๋ฒ์ญ๋ ํค์๋ ์์ฑ (์ด ๋ถ๋ถ์ ์ค์ ๋ฒ์ญ API ์ฌ์ฉ ๋๋ ๋์ฒด ๋ก์ง์ผ๋ก ์์ ๊ฐ๋ฅ)
|
14 |
japanese_keyword = keyword # ์ด ๋ถ๋ถ์ ๋จ์ํ๋ ์์์
๋๋ค.
|
|
|
17 |
# ๊ฒ์ ๊ธฐ๋ก ์ ์ฅ
|
18 |
save_search_history(keyword, japanese_keyword, url)
|
19 |
|
|
|
|
|
|
|
20 |
# ๊ฒฐ๊ณผ ๋ฐํ
|
21 |
+
return f"๊ฒ์์ด: {keyword}\n์ผ๋ณธ์ด: {japanese_keyword}\n\n[์ผ๋ฌ์คํธ ๋ณด๋ฌ๊ฐ๊ธฐ]({url})", url
|
22 |
|
23 |
# ๊ฒ์ ๊ธฐ๋ก ์ ์ฅ ํจ์
|
24 |
def save_search_history(keyword, japanese_keyword, url):
|
25 |
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
26 |
search_history.append((timestamp, keyword, japanese_keyword, url))
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
# ๊ฒ์ ๊ธฐ๋ก ์กฐํ ํจ์
|
29 |
def load_search_history():
|
30 |
return [f"{record[0]} - {record[1]}: {record[2]} (๋งํฌ: {record[3]})" for record in search_history]
|
|
|
32 |
# ๊ฒ์ ๊ธฐ๋ก ์ฌ๊ฒ์ ํจ์
|
33 |
def replay_history(selected_item):
|
34 |
if not selected_item:
|
35 |
+
return "๊ฒ์ ๊ธฐ๋ก์ ์ ํํ์ธ์.", ""
|
36 |
keyword = selected_item.split(" - ")[1].split(":")[0]
|
37 |
return search_and_update_history(keyword)
|
38 |
|
|
|
84 |
search_button.click(
|
85 |
search_and_update_history,
|
86 |
inputs=[keyword_input],
|
87 |
+
outputs=[result_output]
|
88 |
)
|
89 |
|
90 |
# ๊ฒ์ ๊ธฐ๋ก ๋๋กญ๋ค์ด ์
๋ฐ์ดํธ
|
|
|
101 |
outputs=[result_output]
|
102 |
)
|
103 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
104 |
# ์ฑ ์คํ
|
105 |
app.launch()
|