如何解决Python - 循环中多个 txt 文件的 Googletrans
我正在寻求运行 googletrans 来翻译单个文件夹中的一系列 300 .txt 文件。我正在努力构建一个循环,允许我运行每个文件的翻译并将输出写入新的 .txt 文件。 Googletrans 对批量翻译有限制,因此我很乐意将迭代次数限制为一次 50 个文件。
这是翻译单个文件的代码。它先打印原始 txt 文件,然后是翻译后的文件,最后将文件输出到新的 txt 文件中。
from googletrans import Translator
f = open('Translation Project\page_323.txt','r')
if f.mode == 'r':
contents = f.read()
print(contents)
translator = Translator()
result = translator.translate(contents,dest='en')
print(result.text)
with open('Translation Project\trans_page_323.txt','w') as f:
f.write(result.text)
有什么想法吗?刚接触 Python 并且仍然对循环感到困惑。
解决方法
假设有 999 页,文件格式为 trans_page_1.txt
而不是 trans_page_001.txt
,并且第一页是第 1 页,而不是第 0 页:
from googletrans import Translator
translator = Translator()
for page_number in range(1,999):
f = open(f'Translation Project\page_{page_number}.txt','r')
if f.mode == 'r':
contents = f.read()
print(contents)
result = translator.translate(contents,dest='en')
print(result.text)
with open(f'Translation Project\trans_page_{page_number}.txt','w') as f:
f.write(result.text)
这不限制翻译的文件,但您可以通过将最大页面更改为 50 或执行一些其他代码恶作剧来实现。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。