|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 ~风介~ 于 2014-5-3 22:17 编辑
去有道申请一个接口,借鉴一位前辈的代码,写了一个词典程序~
以下是Python2的代码~
- #!/usr/bin/env python
-
- import urllib2
- import re
- import json
-
- class Youdao:
- def __init__(self):
- self.url = 'http://fanyi.youdao.com/openapi.do'
- self.key = '695028818' #有道API key
- self.keyfrom = 'nicomochina' #有道keyfrom
-
- def get_translation(self,words):
- url = self.url + '?keyfrom=' + self.keyfrom + '&key='+self.key + '&type=data&doctype=json&version=1.1&q=' + words
- result = urllib2.urlopen(url).read()
- json_result = json.loads(result)
- json_result = json_result["translation"]
- for i in json_result:
- print i
-
- youdao = Youdao()
- while True:
- msg=raw_input('请输入单词\句子(输入quit结束):')
- if msg == 'quit':
- break
- youdao.get_translation(msg)
复制代码 感谢小甲鱼大大提供的Python3代码~- import urllib.request
- import re
- import json
-
- class Youdao:
- def __init__(self):
- self.url = 'http://fanyi.youdao.com/openapi.do'
- self.key = '695028818' #有道API key
- self.keyfrom = 'nicomochina' #有道keyfrom
-
- def get_translation(self,words):
- url = self.url + '?keyfrom=' + self.keyfrom + '&key='+self.key + '&type=data&doctype=json&version=1.1&q=' + words
- page = urllib.request.urlopen(url)
- result = page.read().decode("utf8")
- json_result = json.loads(result)
- json_result = json_result["translation"]
- for i in json_result:
- print(i)
-
- youdao = Youdao()
- while True:
- msg = input('请输入单词\句子(输入quit结束):')
- if msg == 'quit':
- break
- youdao.get_translation(msg)
复制代码 感谢lizi4355提供的Python2(Tkinter)代码~
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
-
- import urllib2
- import re
- import json
- import Tkinter as tk
-
- class Youdao:
- def __init__(self):
-
- self.url = 'http://fanyi.youdao.com/openapi.do'
- self.key = '695028818' #有道API key
- self.keyfrom = 'nicomochina' #有道keyfrom
- #生成界面
- tk.Label(root, text = '输入').grid(padx = 5, pady = 5)
- tk.Label(root, text = '输出').grid(row = 1,column = 0, padx = 5, pady = 5)
- self.entry_input = tk.Entry(root)
- self.entry_input.grid(row = 0, column = 1, padx = 5, pady = 5)
- self.entry_output = tk.Entry(root)
- self.entry_output.grid(row = 1, column = 1, padx = 5, pady = 5)
- self.btn_tran = tk.Button(root, text = '翻译',command = self.get_translation)
- self.btn_tran.grid(row = 1, column = 2, padx = 5, pady = 5)
-
-
- def get_translation(self):
- words = tk.StringVar()
- words = self.entry_input.get()
- url = self.url + '?keyfrom=' + self.keyfrom + '&key='+self.key + '&type=data&doctype=json&version=1.1&q=' + words
- result = urllib2.urlopen(url).read()
- json_result = json.loads(result)
- json_result = json_result["translation"]
- for i in json_result:
- self.entry_output.insert(tk.END,i)
- # print i
- if __name__ == '__main__':
- root = tk.Tk()
- youdao = Youdao()
- #while True:
- # msg = raw_input('请输入单词\句子(输入quit结束):')
- # if msg == 'quit':
- # break
- # youdao.get_translation(msg)
- root.mainloop()
复制代码
截图如下~
|
|