python做了一个自动翻译的小工具
Python 20行简单实现有道在线翻译的详解简介
主要是尝试简单的使用pyhton的爬虫功能,于是使用有道进行尝试,并没有进行深入的诸如相关api的调用。
以下是需要的post数据
代码
以下是相关部分的代码:
|
import urllib.request import urllib.parse import json content = input ( '需要翻译的内容:' ) #翻译内容 url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&sessionfrom=http://fanyi.youdao.com/' #有道翻译查询入口 data = { #表单数据 'i' : content, 'from' : 'auto' , 'to' : 'auto' , 'smartresult' : 'dict' , 'client' : 'fanyideskweb' , 'doctype' : 'json' , 'version' : '2.1' , 'keyfrom' : 'fanyi.web' , 'action' : 'fy_by_clickbuttion' , 'typoresult' : 'false' } data = urllib.parse.urlencode(data).encode( 'utf-8' ) #对post数据进行编码 response = urllib.request.urlopen(url,data) #发出post请求并获取http响应 html = response.read().decode( 'utf-8' ) #获取网页内容,并进行解码解码 target = json.loads(html) #json解析 print ( "\n翻译结果:%s" % target[ 'translateresult' ][ 0 ][ 0 ][ 'tgt' ]) #输出翻译结果 |
重要函数
urllib.request.urlopen()——发送post数据,同时返回响应
urllib.parse.urlencode()——对post数据进行编码转换
json.loads()——进行json解析
以上所述是小编给大家介绍的python实现有道在线翻译的方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
原文链接:https://blog.csdn.net/kongfu_cat/article/details/79682030