Ответ 1
Я тоже столкнулся с этим, решение, как правило, должно запускать программу как администратор (щелкните правой кнопкой мыши, запустите как администратор).
Я использую Windows 8.1 64 бит
мой код
import pdb
from moviepy.editor import *
clip = VideoFileClip(".\\a.mp4")
clip.write_gif('.\\aasda.gif')
Исключение составляет метод write_gif
Traceback (most recent call last):
File "C:\abi\youtubetogif_project\test.py", line 5, in <module>
clip.write_gif('G:\\abi\\aasda.gif')
File "<string>", line 2, in write_gif
File "C:\Python34\lib\site-packages\moviepy-0.2.1.8.12-py3.4.egg\moviepy\decorators.py", line 49, in requires_duration
return f(clip, *a, **k)
File "C:\Python34\lib\site-packages\moviepy-0.2.1.8.12-py3.4.egg\moviepy\video\VideoClip.py", line 435, in write_gif
dispose= dispose, colors=colors)
File "<string>", line 2, in write_gif
File "C:\Python34\lib\site-packages\moviepy-0.2.1.8.12-py3.4.egg\moviepy\decorators.py", line 49, in requires_duration
return f(clip, *a, **k)
File "C:\Python34\lib\site-packages\moviepy-0.2.1.8.12-py3.4.egg\moviepy\video\io\gif_writers.py", line 186, in write_gif
stdout=sp.PIPE)
File "C:\Python34\lib\subprocess.py", line 848, in __init__
restore_signals, start_new_session)
File "C:\Python34\lib\subprocess.py", line 1104, in _execute_child
startupinfo)
PermissionError: [WinError 5] Access is denied
Я переместил script в другую папку и раздел, выполнив зависящие от ролики и python как admin, выключив UAC, все еще дает мне ошибку
Я тоже столкнулся с этим, решение, как правило, должно запускать программу как администратор (щелкните правой кнопкой мыши, запустите как администратор).
Иногда это происходит, когда некоторые установки не выполняются правильно, обрабатываются stucks и файл все еще открыт. Поэтому, когда вы пытаетесь запустить установку еще раз, и установка требует удаления, вы видите наблюдаемую ошибку. В моем случае закрытие процессов python и использование командной строки помогли
Возможно, вы ошибочно установили разрешение на python3. Например, если для разрешения файла установлено значение
`os.chmod('spam.txt', 0777)` --> This will lead to SyntaxError
Этот синтаксис использовался в Python2. Теперь, если вы измените, как: os.chmod('spam.txt', 777)
→ Это все еще хуже! Ваше разрешение будет установлено неверно, поскольку они не находятся на "восьмеричном", а на десятичном значении.
После этого вы получите разрешение Ошибка, если вы попытаетесь, например, удалить файл: PermissionError: [WinError 5] Доступ запрещен:
Решение для python3 довольно просто: os.chmod('spam.txt', 0o777)
→ Синтаксис теперь ZERO и o "0o"
У меня была такая же проблема с ошибкой Access Denied, которая была поднята из модуля подпроцесса.
Оказывается, это ошибка в Python. К счастью для нас, это уже было решено. Обновление вашей Python до последней версии должно устранить проблему. Например, я все еще находился на 2.7.3 на этой машине, и обновление до 2.7.9 разрешило это. Но ошибка также затронула ветки 3.2 и 3.3 Python.