Форум сайта python.su
Всем привет. Написал небольшой скрипт, который делает перевод файла с субтитрами. Если строк около 45 то все нормально. Но если файл больше, то вылезает вот такая ошибка. В чем может быть проблема я понять не могу. Вдруг кто сталкивался или есть советы как сделать лучше.
import os
import sys
folder_path = 'D:\ПРОГРАММИРОВАНИЕ\Python'
file_name = None
for file in os.listdir(folder_path):
if file.endswith('.srt'):
file_name = file
break
if file_name:
print(f"The first .srt file found in the folder is: {file_name}")
print(file_name)
else:
print("No .srt file found in the folder.")
from googletrans import Translator
translator = Translator()
with open(file_name, 'r') as input_file:
english_text = input_file.read()
translated_text = translator.translate(english_text, src='en', dest='ru').text
with open(file_name, 'w') as output_file:
output_file.write(translated_text)
Прикреплённый файлы:
test.py - Visual Studio Code 26.04.2024 12_02_22.png (87,0 KБ)
Офлайн
PRIZRAK.88Проверь файл с данными на лишние пустые строки и удали их из него.
В чем может быть проблема я понять не могу.
Офлайн
Собственно это не дало результатов.
Тем более, файл такого же вида но с меньшим количеством строк (около 50) переводится нормально
Отредактировано PRIZRAK.88 (Апрель 27, 2024 09:40:31)
Офлайн
Сделай вручную тестовый файл с субтитрами на сорок строк и сделай вручную тестовый файл с субтитрами на сто строк и проверь на этих двух файлах свой скрипт.
Если он сработает для них, ищи различия этих файлов с тем файлом, который не обрабатывается.
Офлайн
PRIZRAK.88там скорее всего ограничение на вводимые символы, если запросить большой перевод, то вернет None, можно файл разделить на нужное кол-во символов
Тем более, файл такого же вида но с меньшим количеством строк (около 50) переводится нормально
Офлайн
xam1816https://py-googletrans.readthedocs.io/en/latest/
там скорее всего ограничение на вводимые символы
Офлайн