python上传图片头像。一个post 提交不知道怎么写?这样的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python上传图片头像。一个post 提交不知道怎么写?这样的相关的知识,希望对你有一定的参考价值。
这样子的提交数据是证据的吗?
首先你需要在你的表单上添加enctype="multipart/form-data"。
<form action="/message/" enctype="multipart/form-data" method="post"><input type="file" name ="picfile">
<button value="提交"type="submit">提交</button>
</form>
其次看你后端的web框架,如果是django,你可以参考。
from PIL import Imagetry:
reqfile =
request.FILES[\'picfile\']#picfile要和html里面一致
img = Image.open(reqfile)
img.thumbnail((500,500),Image.ANTIALIAS)#对图片进行等比缩放
img.save("/Users/bcc/Desktop/python/bbs/Image/a.png","png")#保存图片
except Exception,e:
return HttpResponse("Error %s"%e)#异常,查看报错信息
如果解决了您的问题请采纳!
如果未解决请继续追问
Python自带的urllib, urllib2,httplib 库并不能很好的解决用户上传二进制文件的问题,因为urlencode方法默认采用的encoding是‘application/x-www-form-urlencoded’格式,当我们上传二进制文件的时候需要将其encode成'multipart/form-data'格式
标准库的例子(httplib库+mimetypes库):
http://code.activestate.com/recipes/146306/
还是推荐使用第三方库吧:1. pycurl 2. poster 另外还有一个urllib2_file
博客地址:
http://blog.chinaunix.net/uid-1721137-id-348702.html 参考技术B 怎么这么麻烦,python 可以直接提交file的啊、追问
那怎么实现?
追答擦...真服了..
files='head_img':content
requests.post(url,files=files, timeout=20)
服务器端你自己摸索怎么获取文件内容
iframe跨域上传图片
方案一:用jquery的$.post异步提交,然后把返回来的值用jquery填充到隐藏域中。可是$.post不支持跨域。 jQuery.ajax()支持get方式的跨域,这其实是采用jsonp的方式来完成的。
方案二:利用iframe以及jquery进行表单post提交。代码如下:
== a.com/post.html ==
<script>
function postcallback(data){
//code...
}
</script>
<form action="http://b.com/api.php" method="post" target="ifr-result"><input ....></form>
<iframe name="ifr-result"></iframe>
以上是关于python上传图片头像。一个post 提交不知道怎么写?这样的的主要内容,如果未能解决你的问题,请参考以下文章