这是http body:{'format': 'wav', 'rate': 8000, 'len': 1702, 'token': u'****', 'speech': '太长就不贴了。', 'cuid': 'bnh_voice_test', 'channel': 1}
实在没看到哪里参数错了,求指教在线等。
返回:{u'err_no': 3300, u'err_msg': u'parameters error.', u'sn': u''}
收藏
点赞
0
个赞
请登录后评论
TOP
切换版块
python sdk 使用有什么问题? 你自己不使用SDK调用的时候 是json 所以要自己encode
twj6474:
回复zhaimlill:我也是遇到这样的问题,请问你解决了吗?
回复twj6474:欢迎使用python rest api sdk
zhaimlill:
上面的代码我为何遇到了 TypeError: a bytes-like object is required, not 'str'?
回复zhaimlill:我也是遇到这样的问题,请问你解决了吗?
请问你没遇到 TypeError: a bytes-like object is required, not 'str'?
qq984958198:
回复fs1015:
看了下别人的帖子 说是不能有\n,我也是笑了,百度的程序员这么弱!!!
base64后的语音文件要将\n去掉
成功代码:
d = open('C:\\Users\\sa\\Desktop\\T0043G0005S0006.wav', 'rb').read()data = {
"format": "wav",
"rate": 16000,
"channel": 1,
"token": "24.82ee3624056a96c898fa34f56ee3ad86.2592000.1482482296.282335-8939388",
"cuid": "123",
"len": len(d),
"speech": base64.encodestring(d).replace('\n', '')
}
print requests.post('http://vop.baidu.com/server_api', json=data, headers={'Content-Type': 'application/json'}).text
回复qq984958198:
上面的代码我为何遇到了 TypeError: a bytes-like object is required, not 'str'?
感谢关注和支持
正解:base64后的语音文件要将\n去掉,base64.encodestring(audio).replace('\n', '')
还以为一直要用base64.urlsafe_b64encode,结果一直不对
qq984958198:
回复fs1015:
看了下别人的帖子 说是不能有\n,我也是笑了,百度的程序员这么弱!!!
base64后的语音文件要将\n去掉
成功代码:
d = open('C:\\Users\\sa\\Desktop\\T0043G0005S0006.wav', 'rb').read()data = {
"format": "wav",
"rate": 16000,
"channel": 1,
"token": "24.82ee3624056a96c898fa34f56ee3ad86.2592000.1482482296.282335-8939388",
"cuid": "123",
"len": len(d),
"speech": base64.encodestring(d).replace('\n', '')
}
print requests.post('http://vop.baidu.com/server_api', json=data, headers={'Content-Type': 'application/json'}).text
回复qq984958198:解决了问题就好,我们的支持人员也不都是程序员,尽请见谅,我们在这里讨论技术,目标是解决开发者的问题。
fs1015:
这是http body:{'format': 'wav', 'rate': 8000, 'len': 1702, 'token': u'****', 'speech': '太长就不贴了。', 'cuid': 'bnh_voice_test', 'channel': 1}
实在没看到哪里参数错了,求指教在线等。
返回:{u'err_no': 3300, u'err_msg': u'parameters error.', u'sn': u''}
回复fs1015:
看了下别人的帖子 说是不能有\n,我也是笑了,百度的程序员这么弱!!!
base64后的语音文件要将\n去掉
成功代码:
d = open('C:\\Users\\sa\\Desktop\\T0043G0005S0006.wav', 'rb').read()data = {
"format": "wav",
"rate": 16000,
"channel": 1,
"token": "24.82ee3624056a96c898fa34f56ee3ad86.2592000.1482482296.282335-8939388",
"cuid": "123",
"len": len(d),
"speech": base64.encodestring(d).replace('\n', '')
}
print requests.post('http://vop.baidu.com/server_api', json=data, headers={'Content-Type': 'application/json'}).text
这么多人都说有 3300 问题,到底能不能用啊...
同样不知道哪里错了,下面是我的python代码
d = open('C:\\Users\\sa\\Desktop\\T0043G0005S0006.wav', 'rb').read()data = {
"format": "wav",
"rate": 8000,
"channel": 1,
"token": "24.82ee3624056a96c898fa34f56ee3ad86.2592000.1482482296.282335-8939388",
"cuid": "123",
"len": len(d),
"speech": base64.encodestring(d),
}
print requests.post('http://vop.baidu.com/server_api', json=data, headers={'Content-Type': 'application/json;'}).text
输出 {"err_msg":"parameters error.","err_no":3300,"sn":"349248036311479893049"}
用双引号试试呢?