python 谷歌翻译_Python:谷歌翻译20次的程序如何实现?
Python:谷歌翻譯20次的程序如何實現?
作者:橙汁
【梗的解釋】
“?谷歌翻譯20次”就是多次利用谷歌翻譯(Google Translate)將原本正常的名場面對話翻譯成語言邏輯紊亂、特別搞笑的對話。
比如:這個視頻,利用谷歌翻譯將賽爾號“魔靈王之墓”的劇情制作成非常搞笑的對話。
【翻譯實現】
除了使用人工手動往復翻譯的方法,還可以使用編程語言進行翻譯。比如,本文將展示如何使用Python實現這一過程。
① 下載并安裝對應系統的Python3環境。
Python官網: https://www.python.org
② 安裝googletrans模塊
googletrans是調用谷歌翻譯功能的Python模塊。
打開控制臺(Windows系統下按Win+R,輸入“cmd”即可打開“命令提示符”),輸入“?pip install googletrans”并按下回車鍵,等待模塊安裝完成。
③ 書寫代碼,進行編程。
下面的代碼,我只涉及到了“中文”和“英語”兩種語言的循環翻譯,沒有涉及到其他的語言。如果你有其他方面的需求,可以在函數main()中修改參數txt、times和language,或者根據代碼注釋直接修改函數本身。
【程序代碼】
# 導入模塊函數庫
from googletrans import Translator
import time
import random
# 初始化函數
def init():
# 需要翻譯的原文
global txt
# 需要翻譯的次數
global times
# 需要翻譯的語言
global language
# 加載翻譯引擎
global?translator
translator = Translator(service_urls = ['translate.google.cn'])
# 往返翻譯一次的函數
def OneRound(s, src, dest):
# 原語種翻譯為外語種
s = translator.translate(s, src = src, dest = dest).text
# 設置延時,以免頻率過高遭到服務器拒絕
time.sleep(random.randint(50,?300) /?100)
# 外語種翻譯為原語種
s = translator.translate(s, src = dest, dest = src).text
return s
# 多次翻譯的函數
def OverRound(s, times, src, dest):
ss = []
for i in range(times):
# 進行一次翻譯
s = OneRound(s, src, dest)
# 設置延時,以免頻率過高遭到服務器拒絕
time.sleep(random.randint(100,?500) / 100)
# 儲存中間翻譯結果
ss.append(s)
#?輸出中間翻譯結果
print('第' + str(i + 1) + '次:'+ s)
#?判斷文本是否收斂,如果收斂則提前結束
if i > 0 and ss[i - 1] == ss[i]:
return s
if i > 2 and ss[i - 2] == ss[i] and ss[i - 1] == ss[i - 3]:
return s
return s
# 程序主體函數
def main():
init()
for i in range(len(txt)):
print('')
#輸出原文
print('原 文:'+ txt[i])
#輸出最終翻譯結果
print('【最終結果】\n' + OverRound(txt[i], times, language[0], language[1]))
print('')
# 設置延時,以免頻率過高遭到服務器拒絕
time.sleep(random.randint(5,?12))
#程序運行處
if __name__ == '__main__':
txt = ['在混沌教派與大暗黑天將克里奧星域攪得天翻地覆的同時,讓我們來看看遙遠的泰坦星域中所發生的事…',
'可惡的創世圣魂,居然給我耍這種小把戲!',
'但這絕對不可能一直困住我!',
'盡管已經損耗了大半的力量,但這個封印也即將沖破…',
'是你…來得正好,我忠實的仆從...',
'看來你也在外面幫我一同破除這該死的封印,現在快來幫我!',
'…我這就來幫你…',
'啊!!萊茵哈特!你居然! !',
'哼哼哼哼哼!哈哈哈哈哈!',
'為了破除這封印你已虛弱至此,真是天助我也!',
'你不是已經被逝者巨樽的力量所控制…',
'逝者巨樽?哦,你是說那個裝亡者之力的小杯子啊…',
'說到這個我還要感謝你,讓我感受并達到了一個全新的境界,但是…',
'但是什么?',
'但是現在…我覺得我還可以向著更高的次元突破,而契機就是…你的死!',
'你!啊! !!我的力量!!!快住手!!!',
'你費盡千辛萬苦找來的這幾樣東西,對我來說還有用…',
'?!',
'你休想!他們是我的!是我的!',
'看來,要直接將這些神器剝離出來,還是要花費我一番功夫…',
'那就只好,委屈你暫時忍耐一下了,哈哈哈哈哈哈…。',
'不!!~~~~',
'逝者巨樽…亡者之力…',
'好東西…這簡直讓我欲罷不能啊…',
'哈哈哈哈,再來!',
'創世之鐘…創世神力…',
'這股至高的光明之力…',
'若我可以將其與我的混沌所融合,那將是種怎樣的境界…',
'我要迫不及待了!',
'不!!你不能這樣!!',
'就是這樣,讓我再聽聽你的悲鳴?哈哈哈哈哈!',
'永恒之樹的精華么…',
'哼,這玩意兒,暫時還用不到,但棄之也可惜,先留著吧!',
'求你快住手!我的身體,我的力量啊!!!',
'這就不行了?我們還要繼續呢…哈哈哈哈!',
'泰坦的生命之力…',
'這和冥域的亡者之力倒也如陰陽兩極一樣,看來會用得著。',
'那是我的!是我的!你還給我!',
'你的?少讓我發笑了!',
'這些不也是你從那些“無辜”的家伙那奪來的嗎?我只不過是對你做了同樣的事情,哈哈哈哈哈!',
'嚯…這就是你們暗夜一族的至高秘寶,靈核魔杖?',
'求求你..求求你..只有這個,你不能拿走,不然我會魂飛魄散的!',
'就是這個魔杖,幫助你統御了那些截然不同的能量嗎? ',
'那我可更不能放過了,拿來吧!喝~~',
'啊!!! !',
'呵呵,一代霸主,臨死前居然凄慘至斯,簡直不堪入目…',
'好了,東西都到手了,我該找個地方需要好好參詳一下,想一想該如何利用它們…',
'等我再次歸來之時…我要讓整個宇宙,陷入無盡的恐怖,哈哈哈哈哈哈哈!']
times = 20
# 具體語言標識請自行搜索“語言簡寫代碼表”,如下是“中文(簡體)”與“英語”。
language = ['zh-CN', 'en']
main()
總結
以上是生活随笔為你收集整理的python 谷歌翻译_Python:谷歌翻译20次的程序如何实现?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 的函数原型_JS基础函数、对象和原型、原
- 下一篇: 堰流实验报告思考题_堰流流量系数测定实验