用Python将“.wav”文件POST到URL,如何打印响应?
这里有一个Python脚本:
""" Record a few seconds of audio and save to a WAVE file. """
import pyaudio
import wave
import sys
chunk = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100
RECORD_SECONDS = 5
WAVE_OUTPUT_FILENAME = "output.wav"
p = pyaudio.PyAudio()
stream = p.open(format = FORMAT,
channels = CHANNELS,
rate = RATE,
input = True,
frames_per_buffer = chunk)
print "* recording"
all = []
for i in range(0, RATE / chunk * RECORD_SECONDS):
data = stream.read(chunk)
all.append(data)
print "* done recording"
stream.close()
p.terminate()
# write data to WAVE file
data = ''.join(all)
wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)
wf.writeframes(data)
wf.close()
这个脚本的作用就是第一行注释所说的,如果你在终端运行它,它会在你执行时设置的路径下输出一个“.wav”文件……我想做的是获取这个文件并“处理”它,我不想把它输出到电脑上,而是想把它存储在一个变量里,之后我想把它通过POST请求发送到一个网址,同时解析一些参数……我看到了一些有趣的例子,展示了如何使用requests库发送multipart-encoded files,你可以在这里看到:
但是我尝试了好几次想实现我在这个问题中描述的内容,但都没有成功……也许一些指导会对我有帮助 :)
简单来说,我需要从麦克风录制一个WAV文件,然后把它通过POST请求发送到一个网址(同时带上像Headers这样的数据),最后在终端中以打印语句的形式输出结果……
谢谢你!!