【Python】下载图片,标识之后转发出去

需求:由于项目需要,需要下载图片,然后根据下载环境标识图片,转发给一个服务器

1.下载并解码

 

建立URL连接

conn = HTTPConnection(self.host,timeout=60)

conn.request('GET',url,headers=self.headers)

#print 'http_get -> wait the  response...'

#获取http响应
response = conn.getresponse()

 

#解析头,如果是gzip格式解压缩获取原始数据

content_encoding = response.getheader('Content-Encoding','')

if content_encoding == 'gzip':
     buf = StringIO(response.read())
     infor = GzipFile(fileobj=buf).read()
else:
     infor = response.read()

 

2.重新编码

 

步骤1中,获取到的是字节码 binary字节码形式,infor 可以不用再编码,能够直接在网络上发送。

添加头的话,例如

flag = “a001”

#格式化字符

fmt = '!4s'

#转换成网络字节码

flag_binary = pack(fmt,flag)

 

#拼接头和图片码流就生成了编码结构

data = flag_binary + img

posted @ 2016-06-29 13:03  inns  阅读(259)  评论(0编辑  收藏  举报