利用urllib.urlopen向有道翻译发送数据获得翻译结果
2024-10-07 04:36:06
from urllib import request,parse
import requests, sys,ssl,json ssl._create_default_https_context = ssl._create_unverified_context if __name__=="__main__": # 对应上图的Request URL
request_url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"
n = str(input("请输入需翻译内容?\n请您输入:")) # 创建Form Data字典,存储上图中的Form Data
Form_Data = {}
Form_Data['i'] = n
Form_Data['from'] = 'AUTO'
Form_Data['to'] = 'AUTO'
Form_Data['smartresult'] = 'dict'
Form_Data['client'] = 'fanyideskweb'
Form_Data['doctype'] = 'json'
Form_Data['version'] = '2.1'
Form_Data['keyfrom'] = 'fanyi.web'
Form_Data['action'] = 'FY_BY_REALTIME'
Form_Data['typoResult'] = 'false'
# 使用urlencode方法转换标准格式
data = parse.urlencode(Form_Data).encode('utf-8')
# 传递Request对象和转换完格式的数据
response = request.urlopen(request_url, data)
# 读取信息并解码
html = response.read().decode('utf-8')
# 使用json
translate_results = json.loads(html)
#print(translate_results)
# 找到翻译结果
translate_result = translate_results["translateResult"][0][0]['tgt']
# 打印翻译结果
print("翻译的结果是 %s" % translate_result)
最新文章
- Java - 安全的退出线程
- Git安装图解
- 深入理解Android的startservice和bindservice
- Myeclipse如何改变编码方式
- Row Border in DataGrid 表格边框
- 存储过程往拼接的sql语句中传递日期值
- H TML5 之 (4) 小项目一 时钟
- Android的TextView使用Html来处理图片显示、字体样式、超链接等
- PHP - 操作MySQL数据库
- UVA 620 Cellular Structure (dp)
- TCP/IP模型各个层次的功能和协议
- 学习makefile的一个工程示例
- QT通过url下载图片到本地
- asp.net core 系列 10 配置configuration (上)
- JAVA进阶11
- macbook查找卸载pkg
- Oracle CPU使用率过高问题处理
- iReport-5.6.0 新建文件为什么是灰色的?新建项目没有选择项?
- 让bootstrap-table支持高度百分比
- 项目更改版本号之后打包失败 resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced