创建简单的HTML文件上传页面

13 投票
1 回答
15779 浏览
提问于 2025-04-16 19:59

首先,我只需要一个能上传文件的功能。没有进度条,也不需要检查文件类型或大小,也不需要支持多个文件上传。

我想要的是一个最简单的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页面。Python脚本只在必须有一些CGI处理程序的时候才会存在。我不太喜欢使用Flash。

1 个回答

9

filedata对象就像一个文件的包装,可以把它当作普通文件来使用。基本上,你可以这样做:

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

或者,你还可以用它做其他很多事情,比如使用read()readlines()或者readline()等方法。

撰写回答