python rest api 一直3300
fs1015 发布于2016-08 浏览:3386 回复:12
0
收藏

这是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
个赞
共12条回复 最后由用户已被禁言回复于2022-04
#13于燕松_回复于2017-09

python sdk 使用有什么问题? 你自己不使用SDK调用的时候 是json 所以要自己encode

0
#12fujiayi1984回复于2017-09

twj6474:

回复zhaimlill:我也是遇到这样的问题,请问你解决了吗?

回复twj6474:欢迎使用python rest api sdk 

0
#11twj6474回复于2017-06

zhaimlill:

上面的代码我为何遇到了 TypeError: a bytes-like object is required, not 'str'?

回复zhaimlill:我也是遇到这样的问题,请问你解决了吗?

0
#10zhaimlill回复于2017-05

请问你没遇到 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:

0
#9zhaimlill回复于2017-05

上面的代码我为何遇到了 TypeError: a bytes-like object is required, not 'str'?

0
#8xie_yongkang回复于2017-04

感谢关注和支持

0
#7liuhuabin373回复于2017-04

正解:base64后的语音文件要将\n去掉,base64.encodestring(audio).replace('\n', '')

还以为一直要用base64.urlsafe_b64encode,结果一直不对

0
#6xieymxj回复于2016-11

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:解决了问题就好,我们的支持人员也不都是程序员,尽请见谅,我们在这里讨论技术,目标是解决开发者的问题。

0
#5qq984958198回复于2016-11

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


0
#4qq984958198回复于2016-11

这么多人都说有 3300 问题,到底能不能用啊...

0
#3qq984958198回复于2016-11

同样不知道哪里错了,下面是我的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"}


0
#2mosal4hi回复于2016-08

用双引号试试呢?

0
TOP
切换版块