navegar - Creación de archivos y directorios a través de Python
operaciones con archivos python (2)
import os
path = chap_name
if not os.path.exists(path):
os.makedirs(path)
filename = img_alt + ''.jpg''
with open(os.path.join(path, filename), ''wb'') as temp_file:
temp_file.write(buff)
El punto clave es usar os.makedirs
en lugar de os.mkdir
. Es recursivo, es decir, genera todos los directorios intermedios. Consulte http://docs.python.org/library/os.html
Abra el archivo en modo binario mientras almacena datos binarios (jpeg).
En respuesta a la Edición 2 , si img_alt a veces tiene ''/'' en ella:
img_alt = os.path.basename(img_alt)
Tengo problemas para crear un directorio y luego abrir / crear / escribir en un archivo en el directorio especificado. La razón me parece poco clara. Estoy usando os.mkdir () y
path=chap_name
print "Path : "+chap_path #For debugging purposes
if not os.path.exists(path):
os.mkdir(path)
temp_file=open(path+''/''+img_alt+''.jpg'',''w'')
temp_file.write(buff)
temp_file.close()
print " ... Done"
Me sale el error
OSError: [Errno 2] No such file or directory: ''Some Path Name''
La ruta tiene el formato ''Nombre de carpeta con espacios sin escape''
¿Qué estoy haciendo mal aquí?
Actualización: Intenté ejecutar el código sin crear el directorio.
path=chap_name
print "Path : "+chap_path #For debugging purposes
temp_file=open(img_alt+''.jpg'',''w'')
temp_file.write(buff)
temp_file.close()
print " ... Done"
Aún se recibe un error. Confundido aún más.
Actualización 2: El problema parece ser el img_alt, contiene una ''/'' en algunos casos, lo que hace que esté causando el problema.
Así que necesito manejar el ''/''. ¿Hay alguna forma de escapar de la ''/'' o la eliminación es la única opción?
import os
os.mkdir(''directory name'') #### this command for creating directory
os.mknod(''file name'') #### this for creating files
os.system(''touch filename'') ###this is another method for creating file by using unix commands in os modules