2011-06-21 42 views
9

首先,我不需要比上传文件更多的功能。没有进度条,没有文件类型或大小检查,没有多个文件。创建一个简单的HTML文件上传页面

我想要的是最简单的HTML网页来处理上传并使用我指定的名称保存文件。

我试图用这样的:

<form action="../cgi-bin/upload.py" method="post" enctype="multipart/form-data"> 
<input type="file" name="upload" /> 
<input type="submit" /></form> 

upload.py

#!/usr/bin/python 

import os 
import commands 
import cgi, cgitb 

cgitb.enable() 
print "Content-Type: text/html" 
print 
print 'start!' 
form = cgi.FieldStorage() 
filedata = form['upload'] 

但我不知道如何保存这个文件,如 “Beautiful.mp3”。

身体能帮助吗?

虽然,我真的不想使用任何脚本。我只想要最基本的html页面。只有当必须有一些CGI处理程序时,Python脚本才会存在。 Flash不是首选。

回答

7

filedata对象将包装一个类似文件的对象,该对象可以像普通文件一样对待。基本上,你可以这样做:

if filedata.file: # field really is an upload 
    with file("Beautiful.mp3", 'w') as outfile: 
     outfile.write(filedata.file.read()) 

或者,你可以只是做其他任何事情有了它,使用read()readlines()readline()

+0

非常感谢你,它的工作原理! 顺便说一句,你能给我一些关于如何才能用这些官方文档了解这些信息的说明吗?那可能吗?啊哈〜 – Topro

+0

@ user782114:把它放在你的枕头下:http://docs.python.org/library/ – SingleNegationElimination

相关问题