使用Python从有道词典网页获取单词翻译
程序员文章站
2022-05-05 08:02:48
...
从有道词典网页获取某单词的中文解释。
.*? ')
for i in pattern2.findall(result):
print i.strip('').strip(' ').decode('utf-8')
import re import urllib word=raw_input('input a word\n') url='http://dict.youdao.com/search?q=%s'%word content=urllib.urlopen(url) pattern=re.compile("*?",re.DOTALL) result=pattern.search(content.read()).group() pattern2=re.compile('
再给大家分享一个命令行版的
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2014-04-03 21:12:16 # @Function: 有道翻译命令行版 # @Author : BeginMan import os import sys import urllib import urllib2 reload(sys) sys.setdefaultencoding("utf-8") import simplejson as json import platform import datetime API_KEY = '******' KEYFORM = '******' def GetTranslate(txt): url = 'http://fanyi.youdao.com/openapi.do' data = { 'keyfrom': KEYFORM, 'key': API_KEY, 'type': 'data', 'doctype': 'json', 'version': 1.1, 'q': txt } data = urllib.urlencode(data) url = url+'?'+data req = urllib2.Request(url) response = urllib2.urlopen(req) result = json.loads(response.read()) return result def Sjson(json_data): query = json_data.get('query','') # 查询的文本 translation = json_data.get('translation','') # 翻译 basic = json_data.get('basic','') # basic 列表 sequence = json_data.get('web',[]) # 短语列表 phonetic,explains_txt,seq_txt,log_word_explains = '','','','' # 更多释义 if basic: phonetic = basic.get('phonetic','') # 音标 explains = basic.get('explains',[]) # 更多释义 列表 for obj in explains: explains_txt += obj+'\n' log_word_explains += obj+',' # 句子解析 if sequence: for obj in sequence: seq_txt += obj['key']+'\n' values = '' for i in obj['value']: values += i+',' seq_txt += values+'\n' print_format = '*'*40+'\n' print_format += u'查询对象: %s [%s]\n' %(query,phonetic) print_format += explains_txt print_format += '-'*20+'\n'+seq_txt print_format += '*'*40+'\n' print print_format choices = raw_input(u'是否写入单词本,回复(y/n):') if choices in ['y','Y']: filepath = r'/home/beginman/pyword/%s.xml' %datetime.date.today() if (platform.system()).lower() == 'windows': filepath = r'E:\pyword\%s.xml' %datetime.date.today() fp = open(filepath,'a+') file = fp.readlines() if not file: fp.write('\n') fp.write(u""" - \n
\n\n""" %(query,log_word_explains,phonetic,datetime.date.today())) fp.close() print u'写入成功.' def main(): while True: txt = raw_input(u'请输入要查询的文本:\n') if txt: Sjson(GetTranslate(txt)) if __name__ == '__main__': main()%s \n\n \n %s \n \n
以上就是本文的所有内容了,希望大家能够喜欢
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论