alikayh's picture
Update app.py
2fbfcba verified
import streamlit as st
from googletrans import Translator
def translate_subtitles(input_file):
nums = ['0','1', '2', '3', '4', '5', '6', '7', '8', '9']
translator = Translator()
output_lines = []
with open(input_file, "r", encoding="utf-8") as f:
sub_lines = f.readlines()
for line_en in sub_lines:
if line_en[0] in nums:
output_lines.append(line_en)
elif line_en.strip() == '':
output_lines.append('\n')
else:
if line_en.strip():
line_fa = translator.translate(line_en, src='en', dest='fa')
output_lines.append(line_fa.text + '\n')
return output_lines
st.title("ترجمه زیرنویس با استفاده از Google Translate")
uploaded_file = st.file_uploader("فایل زیرنویس خود را بارگذاری کنید", type=["srt", "txt"])
if uploaded_file is not None:
output_lines = translate_subtitles(uploaded_file)
st.write("ترجمه شده:")
for line in output_lines:
st.write(line, end='')
output_text = "".join(output_lines)
st.download_button(label="دانلود فایل ترجمه شده", data=output_text, file_name="زیرنویس_ترجمه‌شده.srt", mime='text/srt')