2011-06-21 17 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 पेज चाहता हूँ। पाइथन स्क्रिप्ट केवल तभी मौजूद होंगे जब कुछ सीजीआई हैंडलर हों। फ़्लैश पसंद नहीं है।

उत्तर

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

संबंधित मुद्दे