Abirafdi Raditya Putra
Abirafdi Raditya Putra

Reputation: 997

PermissionError: [WinError 5] Access is denied python using moviepy to write gif

I'm using windows 8.1 64 bit

my code

import pdb
from moviepy.editor import *

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

the exception is at write_gif method

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

I moved the script to another folder and partition, running moviepy dependancies and python as admin, turning off UAC still gives me error

Upvotes: 58

Views: 365464

Answers (10)

Shikha
Shikha

Reputation: 237

This might happen when the working directory path is different from the where the file is present . For example while running files and importing them in Spyder3 I have to check the working directory .

Upvotes: 0

Matthew Strasiotto
Matthew Strasiotto

Reputation: 369

On Windows, for me, it looked like at some point I'd set the folder to read-only.

Not really sure when, possibly during some mount failure on my Linux boot, but recursively clearing that flag helped.

Upvotes: 3

Sangeethraj
Sangeethraj

Reputation: 111

this resolved my problem

Click on the search button in the taskbar and type “cmd”. Right-click on the Command Prompt and select Run as Administrator

pip install pydirectory

enter image description here

Upvotes: 7

SJa
SJa

Reputation: 515

I know it is pretty old and a couple of fellows has given the abstract answer to it. But this is how I solved this problem on my machine. (Thanks @DevLoverUmar and @Vladyslav Didenko)

pip install gym --user

Upvotes: 0

Andy
Andy

Reputation: 3170

If you're encountering this in Jupyter/Jupyerlab while trying to pip install foo, you can sometimes work around it by using !python -m pip install foo instead.

Upvotes: 1

Vladyslav Didenko
Vladyslav Didenko

Reputation: 1631

Solution on windows : restarted docker

On windows I used --use-container option during sam build

So, in order to fix stuck process, I've restarted docker

Upvotes: 2

tomalf2
tomalf2

Reputation: 524

I got the same error when an imported library was trying to create a directory at path "./logs/".

It turns out that the library was trying to create it at the wrong location, i.e. inside the folder of my python interpreter instead of the base project directory. I solved the issue by setting the "Working directory" path to my project folder inside the "Run Configurations" menu of PyCharm. If instead you're using the terminal to run your code, maybe you just need to move inside the project folder before running it.

Upvotes: 1

OuuLin
OuuLin

Reputation: 151

Sometimes it occurs when some installations are not completed correctly, the process is stuck, or a file is still opened. So, when you try to run the installation again and the installation requires deleting, you can see the aforementioned error. In my case, shutting down the python processes and command prompt utilization helped.

Upvotes: 15

Marco smdm
Marco smdm

Reputation: 1045

Maybe you wrongly set permission on python3. For instance if for the file permission is set like

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

This syntax was used in Python2. Now if you change like: os.chmod('spam.txt', 777) --> This is still worst!! Your permission will be set wrongly since are not on "octal" but on decimal.

Afterwards you will get permission Error if you try for instance to remove the file: PermissionError: [WinError 5] Access is denied:

Solution for python3 is quite easy: os.chmod('spam.txt', 0o777) --> The syntax is now ZERO and o "0o"

Upvotes: -3

Reed Jones
Reed Jones

Reputation: 1393

I've run into this as well, solution is usually to be sure to run the program as an administrator (right click, run as administrator.)

Upvotes: 51

Related Questions