溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python利用google翻譯方法實例(翻譯字幕文件)

發(fā)布時間:2020-09-25 15:58:09 來源:腳本之家 閱讀:290 作者:夏_徐_梁 欄目:開發(fā)技術(shù)

英文字幕確實讓人頭疼,因此,花了一天專門研究,用python實現(xiàn)了比較簡單的翻譯代碼。僅有幾十行

首先加載模塊

pip uninstall googletrans
git clone https://github.com/BoseCorp/py-googletrans.git
cd ./py-googletrans && python setup.py install

使用測試

from googletrans import Translator

# 實例化
translator = Translator(service_urls=['translate.google.cn'])

content = 'Today is a gooday'

print(translator.translate(content, dest='zh-CN').text.encode('utf-8').decode('utf-8'))

輸出沒問題就行

思路:

按行讀取文件內(nèi)容,翻譯特定行的字幕即可,非常簡單,但是要注意編碼問題

from googletrans import Translator
# encoding=utf-8
import argparse


def main(args):
 # 實例化
 translator = Translator(service_urls=['translate.google.cn'])
 f = open(args.fs, 'r+', encoding="utf-8")
 flist = f.readlines()
 f = open(args.fs, 'w+', encoding="utf-8")
 f.writelines(flist)
 for x in range(4, len(flist)):
  if x % 4 == 0:
   print(x)
   flist[x] = translator.translate(flist[x], dest='zh-CN').text.encode('utf-8').decode('utf-8') + "\n"
   print(translator.translate(flist[x], dest='zh-CN').text.encode('utf-8').decode('utf-8'))
   f = open(args.fs, 'w+', encoding="utf-8")
   f.writelines(flist)


if __name__ == '__main__':
 parser = argparse.ArgumentParser(usage="it's usage tip.", description="help info.")
 parser.add_argument("--fs", type=str, required=True, help="the fileloacation")
 args = parser.parse_args()
 main(args)

使用示范:

python tran.py --fs "D:\xiaxiaxia\pycharmtext\a.vtt"

注意事項

讀行,按行處理,然后寫入和打開都要注意編碼,寫入的時候還得再最后加個換行符\n 這樣才不會有錯誤。

代碼還是比較簡單,感興趣的可以在io處理和并發(fā)上還可以再優(yōu)化。

總結(jié)

到此這篇關(guān)于python利用google翻譯(翻譯字幕文件)的文章就介紹到這了,更多相關(guān)python用google翻譯字幕文件內(nèi)容請搜索億速云以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持億速云!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI