有道翻譯 api 接口調用實戰演示
先來張效果圖,然後在來給大家展示我的接口調用過程。
第一章:準備
我們在官方註冊,獲取我們後續需要的【應用密鑰】和【應用id】。
① 有道智雲·AI開放平臺【註冊】
有道 api 接口調用官方網站:有道智雲
進去註冊個賬號。
② 創建應用,獲取【應用密鑰和id】
創建應用獲取應用密鑰(API Key)
然後就可以看到應用密鑰和應用 id 了,這兩個是我們調用它的 api 所需要的。
服務器 IP 設置的話,就可以防止被其它人用了。
③ 創建實例,綁定應用
然後創建個翻譯實例,綁定剛纔創建的應用。
④ 官方幫助文檔
第二章:實戰
① 源碼展示
import requests
import time
import hashlib
import uuid
youdao_url = 'https://openapi.youdao.com/api' # 有道api地址
# 需要翻譯的文本'
translate_text = "how are you!"
print("需要翻譯的文本:"+translate_text)
# 翻譯文本生成sign前進行的處理
input_text = ""
# 當文本長度小於等於20時,取文本
if(len(translate_text) <= 20):
input_text = translate_text
# 當文本長度大於20時,進行特殊處理
elif(len(translate_text) > 20):
input_text = translate_text[:10] + str(len(translate_text)) + translate_text[-10:]
time_curtime = int(time.time()) # 秒級時間戳獲取
app_id = "..." # 應用id
uu_id = uuid.uuid4() # 隨機生成的uuid數,爲了每次都生成一個不重複的數。
app_key = "..." # 應用密鑰
sign = hashlib.sha256((app_id + input_text + str(uu_id) + str(time_curtime) + app_key).encode('utf-8')).hexdigest() # sign生成
data = {
'q':translate_text, # 翻譯文本
'from':"en", # 源語言
'to':"zh-CHS", # 翻譯語言
'appKey':app_id, # 應用id
'salt':uu_id, # 隨機生產的uuid碼
'sign':sign, # 簽名
'signType':"v3", # 簽名類型,固定值
'curtime':time_curtime, # 秒級時間戳
}
r = requests.get(youdao_url, params = data).json() # 獲取返回的json()內容
print("翻譯後的結果:" + r["translation"][0]) # 獲取翻譯內容
② 要點講解
應用密鑰和應用id獲取
③ 效果展示
效果圖:
喜歡的點個贊❤吧!