PermissionError: [WinError 5] Toegang wordt geweigerd python gebruikt moviepy om gif te schrijven

Ik gebruik Windows 8.1 64 bit

mijn code

import pdb
from moviepy.editor import *
clip = VideoFileClip(".\\a.mp4")
clip.write_gif('.\\aasda.gif')

de uitzondering is de write_gif methode

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

Ik heb het script naar een andere map en partitie verplaatst, moviepy-afhankelijkheden en python als admin uitgevoerd, het uitschakelen van UAC geeft me nog steeds een foutmelding


Antwoord 1, autoriteit 100%

Ik ben dit ook tegengekomen, de oplossing is meestal om het programma als beheerder uit te voeren (rechts klikken, uitvoeren als beheerder.)


Antwoord 2, autoriteit 16%

Soms gebeurt het wanneer sommige installaties niet correct zijn voltooid, het proces vastloopt of een bestand nog steeds wordt geopend. Dus wanneer u de installatie opnieuw probeert uit te voeren en de installatie moet worden verwijderd, kunt u de bovengenoemde fout zien. In mijn geval hielp het afsluiten van de python-processen en het gebruik van de opdrachtprompt.


Antwoord 3, autoriteit 5%

Oplossing voor Windows: Docker opnieuw gestart

In windows gebruikte ik –use-container optie tijdens sam build

Dus om het vastgelopen proces op te lossen, heb ik docker opnieuw opgestart


Antwoord 4, autoriteit 2%

Ik kreeg dezelfde foutmelding toen een geïmporteerde bibliotheek probeerde een map te maken op pad “./logs/”.

Het blijkt dat de bibliotheek het op de verkeerde locatie probeerde te maken, d.w.z. in de map van mijn python-interpreter in plaats van in de basisprojectdirectory. Ik heb het probleem opgelost door het pad “Werkmap” in te stellen naar mijn projectmap in het menu “Configuraties uitvoeren” van PyCharm. Als je in plaats daarvan de terminal gebruikt om je code uit te voeren, moet je misschien gewoon naar de projectmap gaan voordat je deze uitvoert.


Antwoord 5, autoriteit 2%

Als je dit tegenkomt in Jupyter/Jupyerlab terwijl je probeert pip install foote gebruiken, kun je dit soms omzeilen door in plaats daarvan !python -m pip install foote gebruiken .


Antwoord 6, autoriteit 2%

dit heeft mijn probleem opgelost

Klik op de zoekknop in de taakbalk en typ cmd . Klik met de rechtermuisknop op de Opdrachtprompten selecteer Als administrator uitvoeren

pip install pydirectory

voer hier de afbeeldingsbeschrijving in


Antwoord 7

Ik weet dat het behoorlijk oud is en een paar kerels hebben er het abstracte antwoord op gegeven.
Maar dit is hoe ik dit probleem op mijn machine heb opgelost. (Bedankt @DevLoverUmar en @Vladyslav Didenko)

pip install gym --user

Antwoord 8

Voor mij leek het op Windows op een gegeven moment dat ik de map op alleen-lezen zou zetten.

Ik weet niet precies wanneer, mogelijk tijdens een aankoppelfout bij mijn Linux-opstart, maar het recursief wissen van die vlag hielp.


Antwoord 9

Misschien heb je de toestemming voor python3 verkeerd ingesteld. Bijvoorbeeld als voor het bestand toestemming is ingesteld als

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

Deze syntaxis werd gebruikt in Python2. Als je nu verandert zoals:
os.chmod('spam.txt', 777)–> Dit is nog het ergste!! Uw toestemming wordt verkeerd ingesteld omdat ze niet op “octaal” staan, maar op decimaal.

Daarna krijgt u toestemming Error als u bijvoorbeeld probeert het bestand te verwijderen:
PermissionError: [WinError 5] Toegang geweigerd:

Oplossing voor python3 is vrij eenvoudig:
os.chmod('spam.txt', 0o777)–> De syntaxis is nu NUL en o “0o”

LEAVE A REPLY

Please enter your comment!
Please enter your name here

five + eight =

Other episodes