python有道-Python3基础 访问在线的有道词典

Python : 3.7.0

OS : Ubuntu 18.04.1 LTS

IDE : PyCharm 2018.2.4

Conda : 4.5.11

typesetting : Markdown

code

"""

@Author : 行初心

@Date : 18-9-24

@Blog : www.cnblogs.com/xingchuxin

@Gitee : gitee.com/zhichengjiu

"""

import urllib.request

import urllib.parse

import json

def main():

content = input('请输入你想翻译的内容:')

# General-Requst Url

url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null"

# From Data

data = {}

data['type'] = 'AUTO'

data['i'] = content

data['doctype'] = 'json'

data['xmlVersion'] = '1.8'

data['keyfrom'] = 'fanyi.web'

data['ue'] = 'UTF-8'

data['action'] = 'FY_BY_CLICKBUTTON'

data['typoResult'] = 'true'

# 编码成utf-8格式

data = urllib.parse.urlencode(data).encode('utf-8')

# 发出请求得到响应,当data不为none,为post状态。否则为get状态

response = urllib.request.urlopen(url, data)

# html是一个utf-8格式的文件

result = response.read()

# 解码成utf-8格式的

code_utf8 = result.decode('utf-8')

# code_utf8 是json 轻量级的数据交换格式

print(code_utf8)

# 解析json格式

print(json.loads(code_utf8))

# 解析json格式,解出来是一个字典

tagert = json.loads(code_utf8)

print(type(tagert))

print(tagert)

# 逐步拆解,获得结果

print((tagert['translateResult']))

print((tagert['translateResult'][0]))

print((tagert['translateResult'][0][0]))

print('你想翻译的内容是:', (tagert['translateResult'][0][0]['src']))

print('翻译结果是:', (tagert['translateResult'][0][0]['tgt']))

if __name__ == '__main__':

main()

result

/home/coder/anaconda3/envs/py37/bin/python /home/coder/PycharmProjects/basic/demo.py

请输入你想翻译的内容:你好

{"type":"ZH_CN2EN","errorCode":30,"elapsedTime":0,"translateResult":[[{"src":"您的请求来源非法,商业用途使用请关注有道翻译API官方网站“有道智云”: http://ai.youdao.com","tgt":"您的请求来源非法,商业用途使用请关注有道翻译API官方网站“有道智云”: http://ai.youdao.com"}]]}

{'type': 'ZH_CN2EN', 'errorCode': 30, 'elapsedTime': 0, 'translateResult': [[{'src': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com', 'tgt': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com'}]]}

{'type': 'ZH_CN2EN', 'errorCode': 30, 'elapsedTime': 0, 'translateResult': [[{'src': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com', 'tgt': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com'}]]}

[[{'src': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com', 'tgt': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com'}]]

[{'src': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com', 'tgt': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com'}]

{'src': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com', 'tgt': '您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com'}

你想翻译的内容是: 您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com

翻译结果是: 您的请求来源非法,商业用途使用请关注有道翻译API官方网站"有道智云”: http://ai.youdao.com

Process finished with exit code 0

more knowledge

这个代码 注释较多,好好分析。

用这个程序,服务器是可以识别到是python程序来访问的。

学习网络编程的时候,悠着点,好好呆着,服务器要判定是捣乱的,就不让访问了。

从前是可以访问的,如今发生了变化。既然服务器针对这次请求给出了回复,那么就要认真阅读。

欢迎关注有道翻译API官方网站"有道智云”: http://ai.youdao.com

resource

[文档] docs.python.org/3

[规范] www.python.org/dev/peps/pep-0008

[规范] zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules

[源码] www.python.org/downloads/source

[ PEP ] www.python.org/dev/peps

[平台] www.cnblogs.com

[平台] gitee.com

Python具有开源、跨平台、解释型、交互式等特性,值得学习。

Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。

代码的书写要遵守规范,这样有助于沟通和理解。

每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值