[英]Upload a file with python using httplib
conn = httplib.HTTPConnection("www.encodable.com/uploaddemo/")
conn.request("POST", path, chunk, headers)
上面是我要上传图像的网站“ www.encodable.com/uploaddemo/”。
我比较精通php
所以在这里我无法理解路径和标题的含义。 在上面的代码中, chunk
是一个由我的图像文件组成的对象。 以下代码在我不知道标头和路径的情况下尝试执行时会产生错误。
import httplib
def upload_image_to_url():
filename = '//home//harshit//Desktop//h1.jpg'
f = open(filename, "rb")
chunk = f.read()
f.close()
headers = {
"Content−type": "application/octet−stream",
"Accept": "text/plain"
}
conn = httplib.HTTPConnection("www.encodable.com/uploaddemo/")
conn.request("POST", "/uploaddemo/files/", chunk)
response = conn.getresponse()
remote_file = response.read()
conn.close()
print remote_file
upload_image_to_url()
当前,您没有使用代码中先前声明的标头。 您应该将它们作为conn.request
的第四个参数提供:
conn.request("POST", "/uploaddemo/files/", chunk, headers)
另外,请注意:您可以将open("h1.jpg", "rb")
直接传递到conn.request
而无需conn.request
其完全读入chunk
。 conn.request
接受类似文件的对象,一次流一点文件会更有效:
conn.request("POST", "/uploaddemo/files/", open("h1.jpg", "rb"), headers)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.