【问题标题】:How to upload photos to a image hosting server programmatically?如何以编程方式将照片上传到图像托管服务器?
【发布时间】:2011-09-14 09:57:43
【问题描述】:

大家好,我想知道如何通过 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>

网络表单。

【问题讨论】:

  • 你想上传到一些特定的主机吗?如果没有,那么您应该寻找提供和 api 的图像托管,例如imgur.com 和他们的 api api.imgur.com 还有很多关于如何使用 imgur 的示例,例如mutaku.com/wp/index.php/2011/05/…
  • 你说他们有一个上传按钮,所以我猜有某种网络表单。您必须创建一个帖子或获取请求并将其发送到网络表单发送它的站点(查看页面的源代码)。
  • @vader:我认为他们没有 api。
  • @peko:是的,他们有一个网络表单

标签: java python image http


【解决方案1】:

************************************

注意:此答案自编写之日起就已过时。使用请求库。

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 获得

【讨论】:

  • 你确定它有效吗?这是我第一次接受答案:-)
猜你喜欢
  • 1970-01-01
  • 2011-05-24
  • 2012-05-31
  • 2015-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-15
相关资源
最近更新 更多