如何编程上传照片到图像托管服务器?
大家好,我想知道怎么用Python或者Java(更喜欢Python)程序化地上传图片到一个图片托管网站。这个网站不提供FTP访问,只能通过网站上的上传按钮,也就是说只能通过HTTP访问。现在我不想要任何代码,我只是搞不清楚该怎么开始,如果你能给我一些方向上的指导,那就太好了。
<form method="post" name="" enctype="multipart/form-data" action="process.php" onsubmit="return validateForm(this)">
<input type="hidden" value="0" id="theValue">
<div id="myDiv">
<input type="file" name="imagefile[]" size="27"><br><br>
<input type="file" name="imagefile[]" size="27"><br><br>
<input type="file" name="imagefile[]" size="27"><br><br>
<input type="file" name="imagefile[]" size="27"><br><br>
<input type="file" name="imagefile[]" size="27"><br><br>
<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
</div>
<p><a href="javascript:;" onclick="addElement();">Upload more</a></p>
<input type="submit" value="Upload" name="upload">
<p></p>
</form>
这个是网页表单。
1 个回答
2
*******************************
注意:这个回答已经过时了,建议使用requests库。
http://docs.python-requests.org/en/latest/
*******************************
下面是一个对我来说“好用”的代码示例。它使用了MultipartPostHandler来上传文件。
import urllib2
import MultipartPostHandler
params = {'file':open( "FILENAME.JPG" , 'rb')}
opener = urllib2.build_opener(MultipartPostHandler.MultipartPostHandler)
urllib2.install_opener(opener)
req = urllib2.Request( "PROCESS.PHP" , params)
text_response = urllib2.urlopen(req).read().strip()
你可以在这里找到MultipartPostHandler:http://pypi.python.org/pypi/MultipartPostHandler/0.1.0