Python - подпроцесс FileNotFoundError: [WinError 2]

Я пытаюсь запустить этот код reCaptcha, и я очень близко подошел, но получаю эту ошибку:

  File "search_bot.py", line 53, in solveReCaptcha
    sound = pydub.AudioSegment.from_mp3(os.getcwd()+"\\sample.mp3")
  File "C:\Users\username\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pydub\audio_segment.py", line 738, in from_mp3
    return cls.from_file(file, 'mp3', parameters=parameters)
  File "C:\Users\username\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pydub\audio_segment.py", line 685, in from_file
    info = mediainfo_json(orig_file, read_ahead_limit=read_ahead_limit)
  File "C:\Users\username\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pydub\utils.py", line 274, in mediainfo_json
    res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
  File "C:\Users\username\AppData\Local\Programs\Python\Python36-32\lib\subprocess.py", line 709, in __init__
    restore_signals, start_new_session)
  File "C:\Users\username\AppData\Local\Programs\Python\Python36-32\lib\subprocess.py", line 997, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

Это вызывает ошибку в файле .py, который я даже не писал, но является просто частью библиотеки Python, поэтому я не знаю, как это исправить или даже почему я ее получаю. Я уже просматривал этот ответ, но мне это не помогло.

РЕДАКТИРОВАТЬ:

Это код, который выдает ошибку:

urllib.request.urlretrieve(src, os.getcwd() + "\\sample.mp3")
sound = pydub.AudioSegment.from_mp3(os.getcwd() + "\\sample.mp3")
sound.export(os.getcwd() + "\\sample.wav", format="wav")
sample_audio = sr.AudioFile(os.getcwd() + "\\sample.wav")
r = sr.Recognizer()

person Salah Assana    schedule 07.11.2020    source источник


Ответы (1)


сообщение об ошибке указывает на то, что sample.np3 не найден в каталоге, из которого вы выполнили сценарий. вы можете попробовать заменить путь на os.path.join(os.path.dirname(__file__), 'sample.mp3')

person Martin Castro Alvarez    schedule 07.11.2020
comment
Файл sample.mp3 находится в том же каталоге, что и файл .py. os.getcwd() + "\\sample.mp3" - это то, как я добавил файл в первую очередь, поэтому он должен работать для его чтения. Я добавил код, чтобы вы могли увидеть, как он работает. - person Salah Assana; 08.11.2020
comment
Попробуйте использовать os.path.join вместо + для объединения имен путей. Python построит для вас путь, не беспокоясь о проблемах совместимости. - person Martin Castro Alvarez; 09.11.2020