def test_a(request): from checkpub.models import CheckPub pdb.set_trace() conn = UpYun('cpp19', 'one9', 'one9in1234') cp = CheckPub.objects.get(id=273344) cp_id = cp.id #user_id = cp.user.id op = os.path.abspath(os.path.curdir).split() #get current img path userp = cp.photo.url.split() op.extend(userp) img_path = ''.join(op) #open img data = open('%s' % img_path, 'rb') #设置待上传文件的 Content-MD5 值 #如又拍云服务端收到的文件MD5值与用户设置的不一致,将回报 406 Not Acceptable 错误 conn.setContentMD5(md5file(data)) #img_format = cp.photo.url.rsplit(".")[-1] #user_img_jpg = '%d.%s'%(user_id,img_format) #user_img_jpg = '%d'%(user_id) result = conn.writeFile('%d' % cp_id, data) print result return HttpResponse("success")
def upload_pic(pic, code, up_type='ava'): #pdb.set_trace() try: ext_name = '' if up_type == 'ava': conn = UpYun('one9inava', 'one9', 'one9in1234') elif up_type == 'vid': conn = UpYun('vid19', 'one9', 'one9in1234') ext_name = '_cpp.mp4' elif up_type == 'avd': conn = UpYun('vid19', 'one9', 'one9in1234') ext_name = '_ava.mp4' else: conn = UpYun('cpp19', 'one9', 'one9in1234') if 'http' in pic.name: data = ContentFile(urllib2.urlopen(pic.name).read()) data.seek(0) elif 'default' in pic.name: return True else: try: pic.seek(0) data = pic except: print 'no pic' return False #conn.setContentMD5(md5file(pic)) #result = conn.writeFile('%d' % code, pic) #data.write(pic.read()) #data.seek(0) conn.setContentMD5(md5file(data)) #result = conn.deleteFile('%d' % code) result = conn.writeFile('%s%s' % (code, ext_name), data) print result data.close() if result: print 'ok!!' return True else: print 'nok' return False except Exception, ex: print Exception,":",ex return False
def upload_pic(pic, code, up_type='ava'): #pdb.set_trace() try: ext_name = '' if up_type == 'ava': conn = UpYun('one9inava', 'one9', 'one9in1234') elif up_type == 'vid': conn = UpYun('vid19', 'one9', 'one9in1234') ext_name = '_cpp.mp4' elif up_type == 'avd': conn = UpYun('vid19', 'one9', 'one9in1234') ext_name = '_ava.mp4' else: conn = UpYun('cpp19', 'one9', 'one9in1234') if 'http' in pic.name: data = ContentFile(urllib2.urlopen(pic.name).read()) data.seek(0) elif 'default' in pic.name: return True else: try: pic.seek(0) data = pic except: print 'no pic' return False #conn.setContentMD5(md5file(pic)) #result = conn.writeFile('%d' % code, pic) #data.write(pic.read()) #data.seek(0) conn.setContentMD5(md5file(data)) #result = conn.deleteFile('%d' % code) result = conn.writeFile('%s%s' % (code, ext_name), data) print result data.close() if result: print 'ok!!' return True else: print 'nok' return False except Exception, ex: print Exception, ":", ex return False
def UpLoad(self,fileName): data = open(fileName,'rb') self.server.setContentMD5(md5file(data)) date_info=datetime.datetime.today() remote_path=str(date_info.year)+'/'+str(date_info.month) remote_file_name = '/'+str(date_info.microsecond)+fileName.split('\\')[-1] to_write= remote_path+remote_file_name a = self.server.writeFile(to_write,data) if(a): return self.base_access_url+'/'+remote_path+remote_file_name else: return None
def test_dd(request): u = UpYun('newavatar', 'one9', 'one9in1234') #查看版本信息 #print u.version() #设定api所调用的域名 #u.setApiDomain('v0.api.upyun.com') #创建目录 #a = u.mkDir('/testa') #print a #a = u.mkDir('/a/b/c', True) 可自动创建父级目录(最多10级) #显示目录下的文件 #a = u.readDir('/test/') #for i in a: # print i.filename #开启调试 #u.debug = True #get user pdb.set_trace() user = User.objects.get(id=301) user_id = user.id pro = user.get_profile() #get user avatar url url_avatar = pro.avatar.url dir_path = url_avatar.split("/") del dir_path[-1] #get upload file path file_path = "/".join(dir_path) #create dir a = u.mkDir('%s' % file_path, True) #get current dir path op = os.path.abspath(os.path.curdir).split() #get current img path userp = url_avatar.split() op.extend(userp) img_path = ''.join(op) #open img data = open('%s' % img_path, 'rb') #设置待上传文件的 Content-MD5 值 #如又拍云服务端收到的文件MD5值与用户设置的不一致,将回报 406 Not Acceptable 错误 u.setContentMD5(md5file(data)) #置待上传文件的 访问密钥(注意:仅支持图片空!,设置密钥后,无法根据原文件URL直接访问,需带 URL 后面加上 (缩略图间隔标志符+密钥) 进行访问) #如缩略图间隔标志符为 ! ,密钥为 bac,上传文件路径为 /folder/test.jpg ,那么该图片的对外访问地址为: http://空间域名/folder/test.jpg!bac #u.setFileSecret('bbbb') #开始上传文件 pdb.set_trace() #get upload img path file_path = file_path.split() img_format = url_avatar.rsplit(".")[-1] user_img_jpg = '%s.%s' % (user_id, img_format) file_path.append(user_img_jpg) upload_path = '/'.join(file_path) #upload img a = u.writeFile('%s' % upload_path, data) print a #a = u.writeFile('/a/b/c/d/e/f/g/logo.jpg',data, True) 可自动创建父级目录(最多10级) #spice upyun current img url domin_url = DOMAIN_NAME.split() domin_url.append(upload_path) upyun_img_url = ''.join(domin_url) # if a: pro.avatar = upyun_img_url pro.save() #获取上传后的图片信息(仅图片空间有返回数据) print(u.getWritedFileInfo('x-upyun-width')) # 图片宽度 print(u.getWritedFileInfo('x-upyun-height')) # 图片高度 print(u.getWritedFileInfo('x-upyun-frames')) # 图片帧数 print(u.getWritedFileInfo('x-upyun-file-type')) # 图片类型 #获取文件信息 print u.getFileInfo('/logo.jpg') #a = u.writeFile('/testd.jpg','sdfsdf') #print a #a = u.deleteFile('/testd.jpg') #print a a = u.readDir('/') if a: for i in a: print i.filename else: print a
def upload(self, stream, path): self.setContentMD5(md5file(stream)) a = self.writeFile(path, stream, True) if a: return True
#a = u.mkDir('/testa') #print a #a = u.mkDir('/a/b/c', True) 可自动创建父级目录(最多10级) #显示目录下的文件 #a = u.readDir('/test/') #for i in a: # print i.filename #开启调试 #u.debug = True data = open('aa.gif','rb') #设置待上传文件的 Content-MD5 值 #如又拍云服务端收到的文件MD5值与用户设置的不一致,将回报 406 Not Acceptable 错误 u.setContentMD5(md5file(data)) #置待上传文件的 访问密钥(注意:仅支持图片空!,设置密钥后,无法根据原文件URL直接访问,需带 URL 后面加上 (缩略图间隔标志符+密钥) 进行访问) #如缩略图间隔标志符为 ! ,密钥为 bac,上传文件路径为 /folder/test.jpg ,那么该图片的对外访问地址为: http://空间域名/folder/test.jpg!bac u.setFileSecret('bbbb') #开始上传文件 a = u.writeFile('/logo.jpg',data) print a #a = u.writeFile('/a/b/c/d/e/f/g/logo.jpg',data, True) 可自动创建父级目录(最多10级) #获取上传后的图片信息(仅图片空间有返回数据) print(u.getWritedFileInfo('x-upyun-width')) # 图片宽度 print(u.getWritedFileInfo('x-upyun-height')) # 图片高度 print(u.getWritedFileInfo('x-upyun-frames')) # 图片帧数 print(u.getWritedFileInfo('x-upyun-file-type')) # 图片类型