我最近一直在尝试创建一些软件来记录某些语音,将语音更改为文本并将该文本翻译为另一种语言。到目前为止,我已经完成了前两个目标,但我一直在努力翻译。Python中的Microsoft Translate API的响应
我一直在尝试使用Microsoft Translator API,并按照所有说明来设置我的环境。我设置了一个微软的Azure Marketplace帐户,建立一个项目,使API,我已经能够用简单的bash命令,让我的访问令牌:
curl --data "" 'https://api.cognitive.microsoft.com/sts/v1.0/issueToken?Subscription-Key=mySubscriptionKey'
我一直在使用写了一个小python脚本发送请求的请求和argparse库:
request = {
'appid': ('Bearer ' + token),
'text' : txt,
'from' : 'en',
'to' : 'fr'
}
response = requests.get('https://api.microsofttranslator.com/v2/http.svc', params = request)
似乎一切都顺利,我也得到一个200响应(这是我收集意味着成功),但是当我尝试看看文中的响应,数百行不明确的html被打印出来。在查看了几百行(大部分是列出数十种语言,我选择不将其翻译为我的文本)后,我找不到任何实际翻译的文本。微软在their github上的所有例子都使用过时的DataMarket网站,微软正在停止授权链接。而且,我找不到实际使用的API的任何示例 - 它们都只是授权示例。使用带有“Try it Out”示例的标记为我提供了正确的结果(尽管它是一个xml文件?),所以这绝对是一个python问题。
那么,有没有人使用过这个服务,并且介绍了如何解释或解开这个响应的一些想法?
谢谢!
非常有帮助,谢谢!问题是我没有在请求中包含'headers'参数,但只包含'params'参数,所以我从Microsoft获得的输出是大量的html,而不是'application/xml'格式。再次感谢你! – Roman