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 foo
te gebruiken, kun je dit soms omzeilen door in plaats daarvan !python -m pip install foo
te 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
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”