File upload from client application (non-form based upload)

Gabriel Genellina gagsl-py at yahoo.com.ar
Sat Nov 25 01:14:19 CET 2006


At Wednesday 22/11/2006 09:08, stuart at microsoft.com wrote:

>I'm trying to write a Python script to receive and save a file on a web
>server that has been POST'ed from a client application.
>
>In essence, this is similar to handling a file upload from an HTML
>form. However, I can't use:
>
>form = cgi.FieldStorage()
>fileitem = form['file']
>
>since the file is not coming from a form, and hence I don't have a form
>field called 'file'.
>
>I have working server-side code in PHP to do this (error handling
>removed):
>
>$file = "./test.jpg";
>$file_handle = fopen($file,"w");
>$mydata = file_get_contents("php://input");
>fwrite($file_handle, $mydata);
>fclose($file_handle);
>
>What I need is a Python equivalent of the the above PHP script. The
>content-type in the POST header is currently set to
>"application/octet-stream" which works fine with the php code above.

You got rather close... "file" is not an item, it's an attribute, a 
file-like object already open:

form = cgi.FieldStorage()
fileitem = form.file
data = fileitem.read()


-- 
Gabriel Genellina
Softlab SRL 

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis! 
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar



More information about the Python-list mailing list