【SIS服务】python版token调用语音合成,怎么使用?
注意:此博客,调用了北京四局点语音合成API
1、获取token,参考https://support.huaweicloud.com/sis_faq/sis_04_0077.html
参考代码如下:(注意:文件名字为 get_token.py)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
def get_subject_token():
# API的URL
url = "https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens"
# 请求头
headers = {
"Content-Type": "application/json"
}
# 请求体
data = {
"auth": {
"identity": {
"methods": [
"password"
],
"password": {
"user": {
"name": "****", # 用户名
"password": "******", # 密码
"domain": {
"name": "*****" # 账号名
}
}
}
},
"scope": {
"project": {
"name": "cn-north-4" # 局点名称
}
}
}
}
# 发送POST请求
response = requests.post(url, headers=headers, json=data, verify=False)
print(response.headers.get('x-subject-token'))
# 检查响应状态码
if response.status_code == 201:
# 获取 X-Subject-Token
x_subject_token = response.headers.get('X-subject-token')
if x_subject_token:
return x_subject_token
else:
print("响应头中未找到 X-Subject-Token")
else:
# 请求失败,打印错误信息
print("请求失败,状态码:", response.status_code)
print("错误信息:", response.text)
if __name__ == "__main__":
get_subject_token()
2、调用语音合成接口,参考:https://support.huaweicloud.com/api-sis/sis_03_0111.html
参考代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 此demo仅供测试使用,强烈建议使用sdk。需提前安装requests,执行pip install requests
import requests
import json
import get_token
def stts_demo(endpoint, project_id):
url = f'https://{endpoint}/v1/{project_id}/tts'
token = get_token.get_subject_token()
text = '待识别的文本'
header = {
'Content-Type': 'application/json',
'X-Auth-Token': token
}
body = {'text': text}
resp = requests.post(url, data=json.dumps(body), headers=header)
print(resp.text) # 返回结果,语音base64编码
if __name__ == '__main__':
endpoint = "sis-ext.cn-north-4.myhuaweicloud.com"
project_id = "*******" # 此处请填写真实project id
stts_demo(endpoint, project_id)
- 点赞
- 收藏
- 关注作者
评论(0)