python环境下追求免费、专业的中英翻译,两个目前 2026 年最稳妥的替代方案:
方案一:使用真正的 translatesrt
这个包是真实存在的,它是一个简单好用的命令行工具。
- 安装:
bash
pip install translatesrt
- 使用:
bash
# -S 指定源语言(en), -D 指定目标语言(zh-CN)
translatesrt "你的视频.srt" -S en -D zh-CN
方案二:使用 gemini-srt-translator (强烈推荐:目前最专业的免费 AI 翻译)
由于你想要"专业级"翻译,Google 旗下的 Gemini 目前提供非常慷慨的免费 API 额度(每分钟限制内完全免费),且翻译质量远超传统的 Google 翻译。
- 获取免费 API Key :
去 Google AI Studio 点一下就能拿到免费的 Key。 - 安装专为 Gemini 优化的翻译包:
bash
pip install gemini-srt-translator
- 运行翻译:
bash
# 它会自动识别术语,比普通翻译更懂 AI 课程
gemini-srt-translator -k "你的API_KEY" -i "你的视频.srt" -t "Chinese"
方案三:万能保险------直接用 Python 脚本 (无须安装复杂包)
如果上面的包安装还有问题,你可以直接在虚拟环境里用这段"缝合"代码。它调用了最稳健的 googletrans 库,并保留了 SRT 的格式。
- 安装基础库:
bash
pip install googletrans==3.1.0a0 srt
- 新建一个
translate.py写入以下内容:
python
import srt
from googletrans import Translator
import time
def translate_srt(input_file, output_file):
translator = Translator()
with open(input_file, 'r', encoding='utf-8') as f:
subs = list(srt.parse(f.read()))
for sub in subs:
try:
# 翻译内容
translated = translator.translate(sub.content, src='en', dest='zh-cn').text
# 拼接双语(中文在上,英文在下)
sub.content = f"{translated}\n{sub.content}"
print(f"已翻译: {sub.index}")
time.sleep(0.5) # 防止请求过快被封
except Exception as e:
print(f"跳过第 {sub.index} 条: {e}")
with open(output_file, 'w', encoding='utf-8') as f:
f.write(srt.compose(subs))
translate_srt("你的视频.srt", "双语字幕.srt")
- 运行:
python translate.py
💡 建议
对于吴恩达老师的视频,我最建议你用方案二。因为 Gemini 这类大模型能识别出课程里的"梯度下降"、"卷积核"等专业词汇,而普通的 Google 翻译往往会翻译得比较生硬。