在bluemix上使用python调用服务

时间:2016-03-05 22:11:14

标签: python ibm-cloud text-to-speech ibm-watson

我在IBM Bluemix平台上使用python。如何调用文本到语音转换的Watson服务?我在我的python代码中有字符串,我需要传递这个文本才能被阅读。

2 个答案:

答案 0 :(得分:3)

假设您已经拥有一个Bluemix帐户并将语音Watson API添加到您的Bluemix工作区,您将拥有访问API的凭据(restful)。

如果您要求使用CURL linux应用程序,它将是这样的

curl -u "xxxxx729-b03f-4403-8adf-c5418ee4ea05":"xxxxxiWtmVoG" "https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?text=Hello+World" -H "accept: audio/flac" > sound.flac

使用Python,它可以是

import requests

headers = {'accept': 'audio/flac'}

r = requests.get('https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?text=Hello+World', auth=('xxxxx729-b03f-4403-8adf-c5418ee4ea05', 'xxxxxiWtmVoG'), headers=headers)

with open('/home/leo/sound.flac', 'wb') as fd:
    for chunk in r.iter_content(1024):
        fd.write(chunk)

有关请求包的详细信息,请参阅http://docs.python-requests.org/en/master/user/quickstart/

有关text2Speech文档,请参阅https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/text-to-speech/api/v1/

答案 1 :(得分:1)

最好的方法是使用Watson Developer Cloud Python SDK