@Sheshechka

Выдает ошибку the 'JSON object must be str, bytes or bytearray, not NoneType' в простейшем коде, что делать?

def listen():
    while True:
        data = stream.read(4000, exception_on_overflow=False)
        if (rec.AcceptWaveform(data)) and (len(data) > 0):
            answer = json.loads(rec.Reset())
            if answer['text']:
                yield answer['text']


for text in listen():
    print(text)


когда включаю код, то пишет эти ошибки:
Traceback (most recent call last):
File "C:\Users\Zveda\Desktop\Vosk_test\vosk_test.py", line 21, in
for text in listen():
File "C:\Users\Zveda\Desktop\Vosk_test\vosk_test.py", line 16, in listen
answer = json.loads(rec.Reset())
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Zveda\Desktop\Python\Lib\json\__init__.py", line 339, in loads
raise TypeError(f'the JSON object must be str, bytes or bytearray, '
TypeError: the JSON object must be str, bytes or bytearray, not NoneType

Извините, я не понимаю что в этом коде не так. Голосовая модель - Vosk
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
@Everything_is_bad
ну явно же в ошибке пишут что rec.Reset() тебе вернул None (а он вообще должен ли возвращать какие-то данные? название намекает, что нет ), делай на это проверку, перед тем как слать в loads
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы