Python翻译小程序
本文最后更新于 256 天前,其中的信息可能已经有所发展或是发生改变。

调用网上找的api做的…

支持谷歌、必应(能否成功调用看脸)、有道、词霸、欧米翻译

直接放Source

import requests
import re
def translate_google(lanf,lant,text):
    try:
        url="https://translate.google.cn/translate_a/single?client=gtx&sl="+lanf+"&tl="+lant+"&dt=t&dt=bd&q="+text
        translation=requests.get(url).json()
        num=0
        ans={}
        try:
            for i in translation[1]:
                num+=1
                ans[num-1]=0
                for j in translation[1][num-1][1]:
                    ans[num-1]+=1
            i=0
            while i<num:
                print(translation[1][i][0],end=": ")
                j=0
                while j<ans[i]:
                    print(translation[1][i][1][j],end="")
                    if j+1<ans[i]:print(",",end="")
                    j+=1
                print()
                i+=1
            print('')
        except:
            translation=translation[0][0][0]
            print("翻译结果:"+translation)
            print('')
    except:
        print("出错")
def translate_youdao(lanf,lant,text):
    try:
        if lanf=='jp':lanf='ja'
        if lant=='jp':lant='ja'
        mode=(lanf.replace('-','_')+'2'+lant.replace('-','_')).upper()
        url="http://fanyi.youdao.com/translate?&doctype=json&type="+mode+"&i="+text
        translation=requests.get(url).json()['translateResult'][0][0]['tgt']
        print("翻译结果:"+translation)
        print('')
    except:
        print("出错")
def translate_bing(lanf,lant,text):
    try:
        url="http://api.microsofttranslator.com/v2/Http.svc/Translate?appId=AFC76A66CF4F434ED080D245C30CF1E71C22959C&from="+lanf+"&to="+lant+"&text="+text
        translation = requests.get(url).text
        translation=re.findall(r'<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">(.*?)</string>',translation)[0]
        print("翻译结果:"+translation)
        print('')
    except:
        print("出错")
def translate_icb(lanf,lant,text):
    try:
        if lanf!='auto':
            lanf=lanf[:2]
            if lanf=='jp':lanf='ja'
        if lant!='auto':
            lant=lant[:2]
            if lant=='jp':lant='ja'
        url='http://fy.iciba.com/ajax.php?a=fy&f='+lanf+'&t='+lant+'&w='+text
        translation=requests.get(url).json()
        if translation['status']==0:
            for i in translation['content']['word_mean']:
                print(i)
        elif translation['status']==1:
            print("翻译结果:"+translation['content']['out'])
        print('')
    except:
        print("出错")
def translate_omi(lanf,lant,text):
    try:
        lanf=lanf[:1]
        lant=lant[:1]
        if lanf=='a' or lant=='a':mode='undef'
        else:
            if lanf=='z':lanf='c'
            if lant=='z':lant='c'
            mode=lanf+'2'+lant
        url='https://www.omifanyi.com/transsents.do?sentsToTrans='+text+'&languageType='+mode
        translation=requests.get(url).json()
        base=translation['sentsResults'][1][0]
        extra=translation['wordResults']
        print('翻译结果:'+base)
        try:
            for i in extra:
                print(i[0]+' '+i[1])
        except:
            pass
        print('')
    except:
        print("出错")
def main(lanf,lant,provider):
    while 1:
        if provider==1:
            text = input("键入需要翻译的内容:\n")
            translate_google(lanf,lant,text)
        elif provider==2:
            text = input("键入需要翻译的内容:\n")
            translate_bing(lanf,lant,text)
        elif provider==3:
            text = input("键入需要翻译的内容:\n")
            translate_youdao(lanf,lant,text)
        elif provider==4:
            text = input("键入需要翻译的内容:\n")
            translate_icb(lanf,lant,text)
        elif provider==5:
            text = input("键入需要翻译的内容:\n")
            translate_omi(lanf,lant,text)
        elif provider==6:
            text = input("键入需要翻译的内容:\n")
            print("谷歌:")
            translate_google(lanf,lant,text)
            print("有道:")
            translate_youdao(lanf,lant,text)
            print("词霸:")
            translate_icb(lanf,lant,text)
            print("欧米翻译:")
            translate_omi(lanf,lant,text)
            print("必应:")
            translate_bing(lanf,lant,text)
        else:
            print("错误选项")
            exit()
mode=int(input("欢迎使用翻译\n你希望怎么翻译呢?\n1).英译中\n2).中译英\n3).自动转中文\n4).自动转英文\n5).全自动(有道、词霸支持多语言)\n6).手动选择\n7).退出\n"))
if mode==1:
    provider=int(input("要哪家的服务呢?\n1).谷歌\n2).巨硬(Api次数有限)\n3).有道\n4).词霸\n5).欧米翻译\n6).我全都要\n"))
    main('en','zh-cn',provider)
elif mode==2:
    provider=int(input("要哪家的服务呢?\n1).谷歌\n2).巨硬(Api次数有限)\n3).有道\n4).词霸\n5).欧米翻译\n6).我全都要\n"))
    main('zh-cn','en',provider)
elif mode==3:
    provider=int(input("要哪家的服务呢?\n1).谷歌\n2).巨硬(Api次数有限)\n3).有道\n4).词霸\n5).欧米翻译(仅中英)\n6).我全都要\n"))
    main('auto','zh-cn',provider)
elif mode==4:
    provider=int(input("要哪家的服务呢?\n1).谷歌\n2).巨硬(Api次数有限)\n3).有道\n4).词霸\n5).欧米翻译(仅中英)\n6).我全都要\n"))
    main('auto','en',provider)
elif mode==5:
    provider=int(input("要哪家的服务呢?\n1).有道\n2).词霸\n3).欧米翻译(仅中英)\n"))
    if provider==1:provider=3
    elif provider==2:provider=4
    elif provider==3:provider=5
    elif provider==6:pass
    else:provider=0
    main('auto','auto',provider)
elif mode==6:
    lanf=input("输入源语言(zh-cn,en,jp,auto...):\n")
    lant=input("输入目标语言(zh-cn,en,jp...):\n")
    provider=int(input("要哪家的服务呢?\n1).谷歌\n2).巨硬(Api次数有限)\n3).有道\n4).词霸\n5).我全都要\n"))
    if provider==5:provider=6
    elif provider==6:provider=0
    main(lanf,lant,provider)
elif mode==7:
    print('欢迎下次使用')
    exit()
else:
    print('错误选项')
    exit()

就这样8…

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇