python3實現簡單的google翻譯調用,第二版

python3實現簡單的google翻譯調用,第二版

https://download.csdn.net/download/weixin_42152696/10646652

手把手教你調google翻譯接口,旁的話不多說,直接上重點內容。
注意幾點:使用之前先安裝第三方庫,還有一個,def get_tk(text,tkk=‘426538.4063001528’) 這裏面的kk值請自行做計算,根據我之前使用的情況來看,這個值基本上不會發生變動,對於這個kk值,我這裏不再多做敘述,我只提供最好用的實戰部分。

# -*- coding: utf-8 -*-

import execjs
import requests
import json
import urllib3.contrib.pyopenssl


#----------------------------------
#這裏的tkk值需要進行後期喜歡,需要根據tkk.js這個文件進行計算操作,具體的計算請使用node js去進行,命令行就能搞定

def get_tk(text,tkk='426538.4063001528'):
    jsstr = get_js()
    ctx = execjs.compile(jsstr) #加載JS文件
    return (ctx.call('tk',text,tkk))  #調用js方法  第一個參數是JS的方法名,後面的data和key是js方法的參數


def get_js():
    f = open("tk.js", 'r', encoding='utf-8') # 打開JS文件
    line = f.readline()
    htmlstr = ''
    while line:
        htmlstr = htmlstr+line
        line = f.readline()
    return htmlstr


def write_txt(file_name,info):
    fp = open(file_name, "a",encoding='utf-8')  # 打開一個文本文件
    fp.write(info+'\n')  # 寫入數據
    fp.close()  # 關閉文件


def google_tran(from_lang, to_lang, tran_text):

    tk = get_tk(tran_text)
    url = "https://translate.google.cn/translate_a/single?client=t&sl=" + from_lang + "&tl=" + to_lang + "&hl=zh-CN&dt=at&dt=bd&dt=ex&dt=ld&dt=md&dt=qca&dt=rw&dt=rm&dt=ss&dt=t&ie=UTF-8&oe=UTF-8&source=btn&ssel=3&tsel=3&kc=0&tk=" + tk + "&q=" + tran_text
    file_name = "tran.txt"
    txt_file_path = file_name


    # requests.packages.urllib3.disable_warnings()
    # r = requests.get(url ,verify=False ,headers={'Connection':'close'})
    # requests.adapters.DEFAULT_RETRIES = 5
    # s = requests.session()
    # s.keep_alive = False

    #免費代理使用網站
    #http://ip.zdaye.com/shanghai_ip.html#Free

    s = requests.session()
    # url = "https://mail.163.com/"
    s.keep_alive = False

    #這裏寫的是代理,自主去發揮內容
   #s.proxies = {"http": "ip:端口" }
    s.headers = {'Connection':'close'}
    r = s.get(url)


    with open(txt_file_path, "wb") as code:
        code.write(r.content)
    try:
        byte_to_string = str(r.content, encoding="utf-8")
        string_to_list = json.loads(byte_to_string)
        return string_to_list
    except Exception as e:
        print(e)
        return ""


'''
    調用範例:
    from_lang = "zh-CN"
    to_lang   = "en"
    tran_text = "大家好"
    result = google_tran(from_lang, to_lang, tran_text)
    print(len(result))
    print(result[0][0][0])
    print('ok')
    en 英語
    tr 土語
    uz 烏語
    
    
'''
if __name__ == '__main__':
    from_lang = "zh-CN"
    to_lang   = "uz"
    tran_text = "你好"
    result = google_tran(from_lang, to_lang, tran_text)
    print(len(result))
    print(result[0][0][0])
    print('ok')
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章