Input file
Gabriel Genellina
gagsl-py2 en yahoo.com.ar
Jue Ago 2 05:14:52 CEST 2007
En Wed, 01 Aug 2007 18:38:20 -0300, <esteban en ffyb.uba.ar> escribió:
> Estoy haciendo un aplicacion via web ,con html y python. Soy nuevo , y se
> me presenta el siguiente problema, como no se mucho de mover,copiar ,
> subir archivos es python.
No aclaraste que framework estas usando - apache+cgi? apache+mod_python?
turbogears? django?...
> Tengo que darle al usuario la posibilidad de subir una foto , yo hice un
> input file nme file con el encoding=multipart/form-data y metodo post, el
> problema que se me presenta es que cuando tengo que tomar el
> formulario['file'].value me tira en explorer todo el path , cuando
Ese en realidad es un problema del explorer - deberia enviar solamente el
NOMBRE del archivo subido, no el path completo. Que al momento de
procesarlo en el servidor, es inutil, porqeu se refiere a directorios en
la maquina del cliente.
> intento
> copiarlo con shutil me da error no encuentra el archivo a copias. la
> pregunta es input file como actua con python, ese archivo esta en donde
> alojado temporalmente , que libreria tengo que usar, lo guarda algun
> objeto del tipo uploadFile. como lo rescato para luego copiarlo y puedo
> usar el shutil .copy o debo usar otro modulo para subirla.
Suponiendo que estas usando el modulo cgi, el atributo file es un
pseudo-archivo que se puede usar para leer el contenido. No es un nombre
de archivo, ni esta guardado en disco ni tiene nombre siquiera temporario:
f = form['file'].file
if f:
# procesarlo como si f fuese un archivo ya abierto para lectura
Se podria usar shutil, pero sólo funciones que reciben un file como
argumento, no las que reciben un nombre. Parece ser que sólo se puede usar
copyfileobj(f, open('destino.xxx', 'wb'))
--
Gabriel Genellina
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es