1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| # -*- coding: UTF-8 -*-
__author__ = 'Mr.Bluyee'
import requests import json import io import sys import re import hashlib import time import platform
os_info = platform.platform()
if os_info[0] == 'W': sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030') #改变标准输出的默认编码
def translate(content): url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule' headers = { 'Cookie':'OUTFOX_SEARCH_USER_ID=1799185238@10.169.0.83;', 'Origin': 'http://fanyi.youdao.com', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36', 'Referer': 'http://fanyi.youdao.com/', } m = hashlib.md5() d = content u = 'fanyideskweb' f = str(int(time.time()*1000)) c = "ebSeFb%=XZ%T[KZ)c(sy!" m.update((u + d + f + c).encode('utf-8')) payload = { 'i':d, 'from':'AUTO', 'to':'AUTO', 'smartresult':'dict', 'client':u, 'salt':f, 'sign':m.hexdigest(), 'doctype':'json', 'version':'2.1', 'keyfrom':'fanyi.web', 'action':'FY_BY_ENTER', 'typoResult':'false' } r = requests.post(url,headers = headers ,data = payload).json() if r['errorCode'] == 0: #print(r['translateResult'][0][0]['tgt']) return r['translateResult'][0][0]['tgt'] else: #print(r) return '翻译错误' def main(): print(translate('有道翻译api接口')) if __name__ == '__main__': main()
|