Google语音识别的最新错误“错误400错误请求”

时间:2014-05-08 05:48:22

标签: python api speech-to-text

几个星期前,我能够让它终于奏效了。有时候我得到了这个错误400,但是在Python中使用try并重复请求两到三次,直到它工作就足够了。现在它不断重复请求,每次出现同样的错误我都会回来。 这是我的代码。有没有人经历过同样的事情?

def stt_google_wav(audio_fname):


    print "Sending ", audio_fname
    #Convert to flac first
    filename = audio_fname
    del_flac = False
    if 'flac' not in filename:
        del_flac = True
        print "Converting to flac"
        print FLAC_CONV + filename
        os.system(FLAC_CONV + ' ' + filename)
        filename = filename.split('.')[0] + '.flac'

    f = open(filename, 'rb')
    flac_cont = f.read()
    f.close()


    # Headers. A common Chromium (Linux) User-Agent
    hrs = {"User-Agent": "Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.63 Safari/535.7",
       'Content-type': 'audio/x-flac; rate=16000'} 

    req = urllib2.Request(GOOGLE_SPEECH_URL, data=flac_cont, headers=hrs)
    print "Sending request to Google TTS"
    #print "response", response
    while True:    
        try:
            p = urllib2.urlopen(req)
            response = p.read()
            res = eval(response)['hypotheses']
        except:
            print "Couldn't parse service response"
            res = None
            continue
        break


    if del_flac:
        os.remove(filename) # Remove temp file

    return res  

0 个答案:

没有答案