这是上学期在Python课堂上老师讲的利用Python实现有道翻译的功能。
流程如下:网址:有道翻译
输入翻译名称,按F12对网页进行分析,通过查询到translate开头的连接中我们找到了翻译的数据参数
首先将参数以urlencode编码的方式传入到url请求信息中,分二次打印:显示
接下来只需传出的请求信息读出来,再load一下就出来结果了
代码如下:
python
#coding=utf-8
import urllib
from urllib import request
from urllib import parse
import json
while True:data= input('请输入需要翻译的内容(退出输入Q):')if data == 'Q':breakelse:url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'formData = {'i': data,'from': 'AUTO','to': 'AUTO','smartresult': 'dict','client': 'fanyideskweb','salt': '1538959984992','sign': 'e2fd5830da31a783b6c1f83b522a7d7c','doctype': 'json','keyfrom': 'fanyi.web','action': 'FY_BY_CLICKBUTTION','typoResult': 'false',}from_data_parse= urllib.parse.urlencode(formData).encode('utf-8')response =request.urlopen(url,data=from_data_parse)response_str=response.read().decode('utf-8')response_dict=json.loads(response_str)#print(response_dict)print(response_dict['translateResult'][0][0]['tgt'])##print(from_data_parse)
结果如下: