標籤:
def upload(filename): #buld post body data boundary = ‘--xxxxxxxxxxxxxxxx ‘ http_url=‘http://xx.xx.com/upload.php‘ data = [] data.append(‘--%s‘ % boundary) fp=open(filename,‘rb‘) data.append(‘Content-Disposition: form-data; name="%s"; filename="%s"‘ % (‘file‘,filename)) data.append(‘Content-Type: %s\r\n‘ % ‘text/html‘) data.append(fp.read()) fp.close() data.append(‘--%s--\r\n‘ % boundary) http_body = ‘\r\n‘.join(data) try: req = urllib2.Request(http_url, data=http_body) req.add_header(‘Content-Type‘, ‘multipart/form-data; boundary=%s‘ % boundary) res = urllib2.urlopen(req, timeout=5) print res.read().decode(‘utf8‘) except Exception,e: print ‘Error: %s‘ % e
再補充一下用html上傳檔案到伺服器
<head><link rel="shortcut icon" href="favicon.ico"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>匯入資料</title><script type="text/javascript">function check(form) {if(form.file.value==‘‘){alert(‘請選擇要上傳的檔案!‘);form.file.focus();return false;}return true;}window.onload = function() {document.form.reset();}</script></head><h1 align="center">匯入資料</h1><fieldset><legend><b>請選擇要上傳的檔案: <b></legend><form action="http://xx.xx.com/upload.php" method="post" name="form" enctype="multipart/form-data" onsubmit="return check(this);" target="result"><input type="file" name="file" size=50><input type="submit" name="upload" value="上傳"></form></fieldset><iframe name="result" frameborder=0 width="100%" height="100%" scrolling="no"></iframe>
python 上傳檔案到伺服器