python 上传文件到服务器


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>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM