python3:爬有道翻译(第三方库requests版)
上一篇:python3:爬有道翻译是没有用到第三方库的,这一篇将通过requests+lxml来爬取有道翻译的结果.第三方库的安装:requests安装: pip install requests不多说,上code,请各位看官对比一下不同点:#!/user/bin/python#-*- coding:utf-8 -*-import requestsdef youdaoTranslate(...
·
上一篇:python3:爬有道翻译是没有用到第三方库的,这一篇将通过requests+lxml来爬取有道翻译的结果.
第三方库的安装:
第三方库的安装:
requests安装:
pip install requests
不多说,上code,请各位看官对比一下不同点:
#!/user/bin/python
#-*- coding:utf-8 -*-
import requests
def youdaoTranslate(value, count):
if value == '':
print('输入内容为空@_@')
return False
else:
# Request URL
responseURL = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
# 待提交准备Post给url的Data:定义为dict
form_Data = {}
form_Data['i'] = value
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方法转换标准格式
r = requests.post(responseURL, data = form_Data)
result = r.json()
# 使用JSON
# 找到翻译结果
# 这里推荐一个格式化JSON的好工具:https://c.runoob.com/front-end/53
translate_result_main = result['translateResult'][0][0]['tgt']
# 打印翻译结果
print(f'{count}. {translate_result_main}\n\n')
return True
if __name__ == '__main__':
try:
count = 1
while True:
print('-'*26)
word = input('请输入待翻译的单词或句子:\n').strip()
if youdaoTranslate(word, count) == True:
count += 1
except KeyboardInterrupt:
print('\a手动退出!欢迎再来')
更多推荐
所有评论(0)