PermissionError: [WinError 5] L'accès est refusé python en utilisant moviepy pour écrire gif

j'utilise windows 8.1 64 bit

mon code

import pdb
from moviepy.editor import *

clip = VideoFileClip(".a.mp4")
clip.write_gif('.aasda.gif')

l'exception est la méthode write_gif

Traceback (most recent call last):
  File "C:abiyoutubetogif_projecttest.py", line 5, in <module>
    clip.write_gif('G:abiaasda.gif')
  File "<string>", line 2, in write_gif
  File "C:Python34libsite-packagesmoviepy-0.2.1.8.12-py3.4.eggmoviepydecorators.py", line 49, in requires_duration
    return f(clip, *a, **k)
  File "C:Python34libsite-packagesmoviepy-0.2.1.8.12-py3.4.eggmoviepyvideoVideoClip.py", line 435, in write_gif
    dispose= dispose, colors=colors)
  File "<string>", line 2, in write_gif
  File "C:Python34libsite-packagesmoviepy-0.2.1.8.12-py3.4.eggmoviepydecorators.py", line 49, in requires_duration
    return f(clip, *a, **k)
  File "C:Python34libsite-packagesmoviepy-0.2.1.8.12-py3.4.eggmoviepyvideoiogif_writers.py", line 186, in write_gif
    stdout=sp.PIPE)
  File "C:Python34libsubprocess.py", line 848, in __init__
    restore_signals, start_new_session)
  File "C:Python34libsubprocess.py", line 1104, in _execute_child
    startupinfo)
PermissionError: [WinError 5] Access is denied

j'ai déplacé le script vers un autre dossier et une autre partition, tournant moviepy dependancies et python en administrateur, désactiver UAC me donne toujours une erreur

21
demandé sur Abirafdi Raditya Putra 2014-09-29 05:57:56

4 réponses

j'ai couru dans cette ainsi, la solution est généralement pour être sûr d'exécuter le programme en tant qu'administrateur (clic droit, exécuter en tant qu'administrateur.)

27
répondu Reed Jones 2015-01-06 15:25:24

parfois, il arrive que certaines installations ne soient pas terminées correctement, que le processus STACKS et un fichier soient encore ouverts. Donc, lorsque vous essayez d'exécuter à nouveau l'installation et l'installation nécessite la suppression, vous voyez l'erreur observée. Dans mon cas, désactiver les processus python et la commande Prompt utilization a aidé

1
répondu OuuLin 2016-12-12 18:32:50

peut-être que vous avez mal défini la permission sur python3. Par exemple, si le fichier d'autorisation est définie comme

`os.chmod('spam.txt', 0777)` --> This will lead to SyntaxError 

cette syntaxe a été utilisée dans Python2. Maintenant, si tu changes comme: os.chmod('spam.txt', 777) --> C'est encore pire!! Votre permission sera définie à tort puisque ne sont pas sur" octal " mais sur décimal.

après vous obtiendrez l'erreur de permission si vous essayez par exemple de supprimer le fichier: PermissionError: [WinError 5] L'accès est refusé:

LA Solution pour python3 est assez facile: os.chmod('spam.txt', 0o777) -- > la syntaxe est maintenant zéro et o "0o"

-2
répondu Marco smdm 2015-04-15 13:14:42

j'avais exactement le même problème, avec une erreur D'Accès refusé qui a été soulevée du module de sous-processus.

s'avère que c'est un bug en Python. Heureusement pour nous, il a déjà été résolu. La mise à jour de votre Python vers la dernière version devrait corriger le problème. Par exemple, j'étais encore sur 2.7.3 sur cette machine, et la mise à jour de 2.7.9 résolu. Mais le bug a aussi affecté les branches 3.2 et 3.3 de Python.

-3
répondu Junuxx 2015-01-31 04:51:44