语音转文本为何持续输出‘result2:’?需获取纯转文本结果
解决SpeechRecognition输出包含元数据的问题
问题分析
你看到的result2:及冗余元数据并非业务代码产生,而是SpeechRecognition库依赖的网络请求组件(如urllib)输出的调试日志,或是库内部的额外输出。你的现有代码逻辑本身是正确的,r.recognize_google(audio)默认会返回最匹配的纯转录文本。
解决方案
1. 屏蔽调试日志
在代码开头添加日志过滤代码,关闭不必要的库级日志输出:
import logging # 屏蔽SpeechRecognition库的调试日志 logging.getLogger('speech_recognition').setLevel(logging.WARNING) # 屏蔽urllib相关的调试日志 logging.getLogger('urllib3').setLevel(logging.WARNING)
2. 确保正确调用函数
确认调用get_audio()时仅打印返回的纯文本,避免额外输出:
# 调用示例 transcript = get_audio() print(transcript)
3. 排查库版本问题
如果仍有异常输出,尝试升级到最新版SpeechRecognition库:
pip install --upgrade SpeechRecognition
内容的提问来源于stack exchange,提问作者Omer
相关产品推荐
相关产品推荐

