繁体   English   中英

Python - Googletrans 循环中的多个 txt 文件

[英]Python - Googletrans for multiple txt files in loop

我正在寻求运行 googletrans 来翻译单个文件夹中的一系列 300.txt 文件。 我正在努力构建一个允许我运行每个文件的翻译并将 output 写入 new.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 或执行一些其他代码恶作剧来做到这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM