作者:许雅惠嘉文意芝 | 来源:互联网 | 2023-07-07 08:06
前言首先感谢观众们对我的博文进行修正,也感谢大家支持!由于上一篇在Python社区上传的博文是我很久以前制作的,我直接从我的个人网站复制了,所以粘贴会出现错误,特别是文章中出现的h
前言
首先感谢观众们对我的博文进行修正,也感谢大家支持!由于上一篇在Python社区上传的博文是我很久以前制作的,我直接从我的个人网站复制了,所以粘贴会出现错误,特别是文章中出现的html文本会造成网页错误,我会进行一步一步慢慢修改的,那么这期呢是纯教程,我会一步一步教大家如何白嫖与使用接口。
找接口
网易的翻译api是需要money的,想要尝试白嫖就要从“公开”的地方入手。“公开”指什么呢?“公开”指网页官方开放的地方(比如:在线翻译),打开网页翻译,并开始抓包
看来是把翻译内容直接写在网址里,大体看了一下下面的翻译结果,直接处理会花费很多时间,如果不想直接访问网页的话只可以通过有道官方提供的API了,
我找到了官方的API介绍中的API演示
并输入文字开始抓包,
果然没有让我失望过,但是需要注意一点,这个接口必须使用POST访问,只是个DEMO是没有网易提供的应用ID与Key的,不可以频繁调用,结合官方的API文档
就可以开始写代码了。
写代码
由于接口是允许允许多语言翻译的,我先写一个简单的程序进行调用:
import requests
if __name__ == '__main__':
print('BY我叫以赏 And Pikachu!网易api接口翻译文字!')
Q = input('输入欲翻译文本:')
From = input('请输入原文本语种(为空或没有输入采用自动识别):')
if From.strip() == '':
From = 'Auto'
To = input('请输入翻译文本语种(为空或没有输入采用自动识别):')
if To.strip() == '':
To = 'Auto'
data = {
'q' : Q,
'from' : From,
'to' : To
}
information = requests.post('https://aidemo.youdao.com/trans',data)
print(information.json())
没有问题,加工一下就可以使用了。
import requests
if __name__ == '__main__':
print('BY我叫以赏 And Pikachu!网易api接口翻译文字!')
while True:
Q = ''
while Q.strip() == '' or len(Q.strip()) > 1000:
Q = input('输入欲翻译文本:')
if Q.strip() == '':
print('欲翻译文本不可以为空!')
if len(Q.strip()) > 1000:
print('欲翻译文本长度不可以超过1000!')
print('欲翻译文本 => %s' % (Q))
From = input('请输入原文本语种(为空或没有输入采用自动识别):')
if From.strip() == '':
From = 'Auto'
print('原文本语种 => %s' % ({'Auto': 'Auto(自动识别)'}.get(From, From)))
To = input('请输入翻译文本语种(为空或没有输入采用自动识别):')
if To.strip() == '':
To = 'Auto'
print('翻译文本语种 => %s' % ({'Auto': 'Auto(自动识别)'}.get(To, To)))
data = {
'q': Q,
'from': From,
'to': To
}
information = requests.post('https://aidemo.youdao.com/trans', data)
json = information.json()
errorCode = json['errorCode']
if errorCode != '0':
print('出现错误!返回的状态码为:%s' % (errorCode))
break
query = json['query']
translation = json['translation']
print('原文本:' + query)
for x in range(len(translation)):
print('翻译结果' + str(x + 1) + " : " + translation[x])
更多请自行添加,官方参考链接:https://ai.youdao.com/DOCSIRMA/html/%E8%87...