Python - Googletrans 用于循环中的多个 txt 文件
Python - Googletrans for multiple txt files in loop
我正在寻求 运行 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 或执行一些其他代码恶作剧来实现。
我正在寻求 运行 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 或执行一些其他代码恶作剧来实现。