поднять NeedDownloadError ('нужно ffmpeg exe. 'NeedDownloadError: нужен ffmpeg exe)
Я пытаюсь выполнить вызов неофициальной библиотеки API python Instagram, после нескольких ошибок для зависимостей, которые я исправил, я застрял в этом.
File "C:UsersPabloDesktoptxts_pys_phps_programacionInstagram-API-python-masterInstagramAPI.py", line 15, in <module>
from moviepy.editor import VideoFileClip
File "C:Python27libsite-packagesmoviepyeditor.py", line 22, in <module>
from .video.io.VideoFileClip import VideoFileClip
File "C:Python27libsite-packagesmoviepyvideoioVideoFileClip.py", line 3, in <module>
from moviepy.video.VideoClip import VideoClip
File "C:Python27libsite-packagesmoviepyvideoVideoClip.py", line 20, in <module>
from .io.ffmpeg_writer import ffmpeg_write_image, ffmpeg_write_video
File "C:Python27libsite-packagesmoviepyvideoioffmpeg_writer.py", line 15, in <module>
from moviepy.config import get_setting
File "C:Python27libsite-packagesmoviepyconfig.py", line 38, in <module>
FFMPEG_BINARY = get_exe()
File "C:Python27libsite-packagesimageiopluginsffmpeg.py", line 86, in get_exe
raise NeedDownloadError('Need ffmpeg exe. '
NeedDownloadError: Need ffmpeg exe. You can download it by calling:
imageio.plugins.ffmpeg.download()
6 ответов
этот пакет полагается на ffmpeg
исполняемый файл должен быть в пути.
поэтому просто загрузите его, установите его где-нибудь и добавьте каталог установки в PATH. убедитесь, что к нему можно получить доступ, набрав:
ffmpeg
из командной строки.
эти последние две строки в сообщениях об ошибках дают ценную подсказку,и я установил moviepy только сегодня, поэтому я помню средство.
NeedDownloadError: Need ffmpeg exe. You can download it by calling:
imageio.plugins.ffmpeg.download()
- первый
(sudo) pip install imageio
, если это необходимо. - теперь:
import imageio
а тоimageio.plugins.ffmpeg.download()
.
Если вы используете Ubuntu, просто попробовать:
sudo apt-get install ffmpeg
Else если вы используете Windows, просто попробуйте изменить ffmpeg.py 82-я строка от auto=False до auto=True
он автоматически загрузит ffmpeg на правильный путь один раз. Тогда import imageio
и напиши imageio.plugins.ffmpeg.download()
будет работать.
в Windows, я бы исправить это таким образом:
руководство скачать ffmpg от github
-
в Lib\site-packages\imageio\plugins\ffmpeg.py файл, изменить
exe = get_remote_file('ffmpeg/' + FNAME_PER_PLATFORM[plat], auto=False)
to
exe = "PATH_WITH_FFMPG\ffmpeg.win32.exe"
для тех, кто использует mac, сделайте это.
pip install imageio (если еще не установлен).
затем создайте .файл py (скрипт python).
в этом файле написать следующее:
import imageio
imageio.plugins.ffmpeg.download()
запустите этот скрипт в терминале (i.e " python (insert .py filename здесь)")
Он устанавливает его в каталог, который должен быть автоматически добавлен в ваш путь. Если нет, добавьте его в свой путь.
введите
ffmpeg
в убедитесь, что он установлен на вашем пути.
на mac, это лучший способ, чтобы установить его. Откройте терминал и введите.
$ brew install ffmpeg
вы увидите, как он будет установлен.
==> Installing dependencies for ffmpeg: lame, x264, xvid