我正在尝试使用Wit.ai语音识别。我已成功地将波形文件发送到网站以转换为文本,但现在我尝试将其发送到块中以减少延迟,但每当我尝试这样做时它会给我错误
commandPath = "Command.wav"
#Headers for http request
headers = {"authorization": "Bearer " + TOKEN,
"Content-Type": "audio/wav",
"Transfer-encoding": "chunked"}
#open Audio file to send
audioFile = open(commandPath, "rb")
def gen():
#Keep getting audio until it has all been read
while audioFile.read(2048) != "":
yield audioFile.read(2048)
print("Finished")
r = requests.post(ENDPOINT, headers=headers, data=gen())
print(r.text)
即使我仍在发送一个wav文件,就像我说我在标题中。有人可以看看我的代码并告诉我我做错了什么吗?我很感激。我正在使用python 请求库
{{1}}
答案 0 :(得分:1)
我想问题是你每个循环调用<li class="nav-item">
<form method="post" class="form-inline">
<input class="form-control" type="text" name="search" placeholder="Search for wedding...">
<input method="post" name="submit" class="btn w_search form-control" type="submit" value="submit">
</form>
</li>
两次,忽略(并丢弃)第一次调用的结果。
第一个块(你丢弃它)保存了头信息,因此永远不会到达正确抱怨的服务器。