python - namedtemporaryfile - Permiso denegado para escribir en mi archivo temporal
tempfile ruby (2)
Use el parámetro de borrar como se muestra a continuación:
tmpf = NamedTemporaryFile (delete = False)
Referencia para el error: https://github.com/bravoserver/bravo/issues/111
Saludos, Vidyesh
Estoy intentando crear y escribir en un archivo temporal en el sistema operativo Windows usando Python. He utilizado el tempfile
módulo de Python para crear un archivo temporal.
Pero cuando voy a escribir ese archivo temporal, aparece un error Permission Denied
. ¡¿No tengo permiso para escribir en archivos temporales ?! ¿Estoy haciendo algo mal? Si quiero crear y escribir en un archivo temporal, ¿cómo debo hacerlo en Python? Quiero crear un archivo temporal en el directorio temporal por motivos de seguridad y no localmente (en el directorio que se está ejecutando el .exe).
IOError: [Errno 13] Permission denied: ''c://users//blah~1//appdata//local//temp//tmpiwz8qw''
temp = tempfile.NamedTemporaryFile().name
f = open(temp, ''w'') # error occurs on this line
NamedTemporaryFile
realmente crea el archivo para usted, no es necesario que lo abra para escribir.
De hecho, los documentos de Python dicen:
Si el nombre se puede usar para abrir el archivo por segunda vez, mientras que el archivo temporal nombrado todavía está abierto, varía según las plataformas (se puede usar en Unix, no en Windows NT o posterior ).
Es por eso que está recibiendo su error de permiso. Lo que probablemente estás buscando es:
f = tempfile.NamedTemporaryFile(mode=''w'') # open file
temp = f.name # get name (if needed)