Я пытаюсь создать страницу загрузчика файлов, которая будет запрашивать у пользователя файл и будет загружать, показывая прогресс.
На данный момент я Мне удалось создать простую HTML-страницу, которая может вызывать мой скрипт на Python. Затем скрипт python получит файл и загрузит его кусками по 1000 байт.
У меня две основные проблемы (в основном из-за того, что я совершенно новичок в этом):
1) Я не могу получить размер файла для расчета процента 2) Я не знаю, как взаимодействовать между питоном на стороне сервера и всем, что находится на странице, чтобы обновить статус выполнения; предположительно, 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,)