【发布时间】:2011-06-20 22:06:30
【问题描述】:
我正在尝试制作一个文件上传器页面,该页面将提示用户输入文件并在显示进度的同时上传。
目前,我已经设法制作了一个可以调用我的 python 脚本的简单 HTML 页面。然后,python 脚本将获取文件并以 1000 字节块的形式上传。
我有两个主要问题(主要是因为对这个完全陌生):
1) 我无法获取文件大小来计算百分比 2)我不知道如何在服务器端python和页面中的任何内容之间进行通信以更新进度状态;大概是javascript。
我是不是走错了路?或者有办法解决我的问题吗?
这是我的python代码:
#!/usr/local/bin/python2.5
import cgi, os
import cgitb; cgitb.enable()
try:
import msvcrt
msvcrt.setmode (0, os.O_BINARY)
msvcrt.setmode (1, os.O_BINARY)
except ImportError:
pass
form = cgi.FieldStorage()
upload = form['file']
if upload.filename:
name = os.path.basename(upload.filename)
out = open('/home/oetzi/webapps/py/' + name, 'wb', 1000)
message = "The file '" + name + "' was uploaded successfully"
while True:
packet = upload.file.read(1000)
if not packet:
break
out.write(packet)
out.close()
else:
message = "Derp... could you try that again please?"
print """\
Content-Type: text/html\n
<html><body>
<p>%s</p>
</body></html>
""" % (message,)
【问题讨论】:
标签: javascript python html cgi