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