Exemple #1
0
    def upload_data(self, bucket, dstpath, data, session, offset):

        url = self.generate_res_url(bucket, dstpath)
        expired = int(time.time()) + self.EXPIRED_SECONDS
        auth = Auth(self._secret_id, self._secret_key)

        sha1 = hashlib.sha1()
        sha1.update(data)

        sign = auth.sign_more(bucket, expired)
        headers = {
            'Authorization': sign,
            'User-Agent': conf.get_ua(),
        }

        files = {
            'op': ('upload_slice'),
            'filecontent': data,
            'sha': sha1.hexdigest(),
            'session': session,
            'offset': str(offset)
        }
        return self.sendRequest('POST',
                                url,
                                headers=headers,
                                files=files,
                                timeout=(self.connect_timeout,
                                         self.read_timeout))
Exemple #2
0
    def __update(self, bucket, path, videoCover, title, desc, bizattr, flag):
        expired = int(time.time()) + self.EXPIRED_SECONDS
        url = self.generate_res_url(bucket, path)
        auth = Auth(self._secret_id, self._secret_key)
        sign = auth.sign_once(
            bucket, '/' + str(conf.get_app_info()['appid']) + '/' + bucket +
            '/' + path)

        headers = {
            'Authorization': sign,
            'Content-Type': 'application/json',
            'User-Agent': conf.get_ua(),
        }

        data = {'op': 'update'}
        if videoCover != None:
            data['video_cover'] = videoCover
        if bizattr != None:
            data['biz_attr'] = bizattr
        if title != None:
            data['video_title'] = title
        if desc != None:
            data['video_desc'] = desc
        if flag != None:
            data['flag'] = flag

        return self.sendRequest('POST',
                                url,
                                headers=headers,
                                data=json.dumps(data),
                                timeout=(self.connect_timeout,
                                         self.read_timeout))
Exemple #3
0
    def __delete(self, bucket, path):
        if path == '' or path == '/':
            return {
                'httpcode': 0,
                'code': self.VIDEO_PARAMS_ERROR,
                'message': 'path cannot be empty',
                'data': {}
            }
        expired = int(time.time()) + self.EXPIRED_SECONDS
        url = self.generate_res_url(bucket, path)
        auth = Auth(self._secret_id, self._secret_key)
        sign = auth.sign_once(
            bucket, '/' + str(conf.get_app_info()['appid']) + '/' + bucket +
            '/' + path)

        headers = {
            'Authorization': sign,
            'Content-Type': 'application/json',
            'User-Agent': conf.get_ua(),
        }

        data = {'op': 'delete'}

        return self.sendRequest('POST',
                                url,
                                headers=headers,
                                data=json.dumps(data),
                                timeout=(self.connect_timeout,
                                         self.read_timeout))
Exemple #4
0
	def upload(self, filepath, bucket, dstpath, videoCover=None, title=None, desc=None, bizattr=None, magiccontext=None):
		filepath = os.path.abspath(filepath);
		if not os.path.exists(filepath):
			return {'httpcode':0, 'code':self.VIDEO_FILE_NOT_EXISTS, 'message':'file not exists', 'data':{}}
		expired = int(time.time()) + self.EXPIRED_SECONDS
		bucket = string.strip(bucket, '/')
		dstpath = urllib.quote(string.strip(dstpath, '/'), '~/')
		url = self.generate_res_url(bucket, dstpath)
		auth = Auth(self._secret_id, self._secret_key)
		sha1 = self.sha1file(filepath);
		sign = auth.sign_more(bucket, expired)

		headers = {
			'Authorization':sign,
			'User-Agent':conf.get_ua(),
		}

		files = {'op':'upload','filecontent':open(filepath, 'rb'),'sha':sha1}
		if videoCover != None:
			files['video_cover'] = videoCover
		if title != None:
			files['video_title'] = title
		if desc != None:
			files['video_desc'] = desc
		if bizattr != None:
			files['biz_attr'] = bizattr
		if magiccontext != None:
			files['magiccontext'] = magiccontext

		return self.sendRequest('POST', url, headers=headers, files=files)
Exemple #5
0
    def __list(self,
               bucket,
               path,
               num=20,
               pattern='eListBoth',
               order=0,
               context=''):
        expired = int(time.time()) + self.EXPIRED_SECONDS
        url = self.generate_res_url(bucket, path)
        auth = Auth(self._secret_id, self._secret_key)
        sign = auth.sign_more(bucket, expired)

        headers = {
            'Authorization': sign,
            'User-Agent': conf.get_ua(),
        }

        data = {
            'op': 'list',
            'num': num,
            'pattern': pattern,
            'order': order,
            'context': context
        }

        return self.sendRequest('GET',
                                url,
                                headers=headers,
                                params=data,
                                timeout=(self.connect_timeout,
                                         self.read_timeout))
Exemple #6
0
	def upload_prepare(self,filepath,bucket,dstpath,videoCover,title,desc,bizattr,slice_size,session,magiccontext):
		if not os.path.exists(filepath):
			return {'httpcode':0, 'code':self.VIDEO_FILE_NOT_EXISTS, 'message':'file not exists', 'data':{}}

		url = self.generate_res_url(bucket, dstpath)
		expired = int(time.time()) + self.EXPIRED_SECONDS
		auth = Auth(self._secret_id, self._secret_key)
		size = os.path.getsize(filepath)
		sha1 = self.sha1file(filepath);
		sign = auth.sign_more(bucket, expired)

		headers = {
			'Authorization':sign,
			'User-Agent':conf.get_ua(),
		}

		files = {'op': ('upload_slice'),'sha':sha1,'filesize': str(size)}
		if videoCover != None:
			files['video_cover'] = videoCover
		if title != None:
			files['video_title'] = title
		if desc != None:
			files['video_desc'] = desc
		if bizattr != None:
			files['biz_attr'] = bizattr
		if slice_size > 0:
			files['slice_size'] = str(slice_size)
		if session != '':
			files['session'] = session
		if magiccontext != None:
			files['magiccontext'] = magiccontext

		return self.sendRequest('POST', url, headers=headers,files=files, timeout=(self.connect_timeout, self.read_timeout))
Exemple #7
0
	def __update(self, bucket, path, videoCover, title, desc, bizattr, flag):
		expired = int(time.time()) + self.EXPIRED_SECONDS
		url = self.generate_res_url(bucket, path)
		auth = Auth(self._secret_id, self._secret_key)
		sign = auth.sign_once(bucket, '/'+str(conf.get_app_info()['appid'])+'/'+bucket+'/'+path)

		headers = {
			'Authorization':sign,
			'Content-Type':'application/json',
			'User-Agent':conf.get_ua(),
		}

		data = {'op':'update'}
		if videoCover != None:
			data['video_cover'] = videoCover
		if bizattr != None:
			data['biz_attr'] = bizattr
		if title != None:
			data['video_title'] = title
		if desc != None:
			data['video_desc'] = desc
		if flag != None:
			data['flag'] = flag

		return self.sendRequest('POST', url, headers=headers, data=json.dumps(data), timeout=(self.connect_timeout, self.read_timeout))
Exemple #8
0
	def __stat(self, bucket, path):
		expired = int(time.time()) + self.EXPIRED_SECONDS
		url = self.generate_res_url(bucket, path)
		auth = Auth(self._secret_id, self._secret_key)
		sign = auth.sign_more(bucket, expired)

		headers = {
			'Authorization':sign,
			'User-Agent':conf.get_ua(),
		}

		data={'op':'stat'}

		return self.sendRequest('GET', url, headers=headers, params=data, timeout=(self.connect_timeout, self.read_timeout))
Exemple #9
0
	def __list(self, bucket, path, num=20, pattern='eListBoth', order=0, context='') :
		expired = int(time.time()) + self.EXPIRED_SECONDS
		url = self.generate_res_url(bucket, path)
		auth = Auth(self._secret_id, self._secret_key)
		sign = auth.sign_more(bucket, expired)

		headers = {
			'Authorization':sign,
			'User-Agent':conf.get_ua(),
		}

		data = {'op':'list','num':num,'pattern':pattern,'order':order,'context':context}

		return self.sendRequest('GET', url, headers=headers, params=data, timeout=(self.connect_timeout, self.read_timeout))
Exemple #10
0
    def upload(self,
               filepath,
               bucket,
               dstpath,
               videoCover=None,
               title=None,
               desc=None,
               bizattr=None,
               magiccontext=None):
        filepath = os.path.abspath(filepath)
        if not os.path.exists(filepath):
            return {
                'httpcode': 0,
                'code': self.VIDEO_FILE_NOT_EXISTS,
                'message': 'file not exists',
                'data': {}
            }
        expired = int(time.time()) + self.EXPIRED_SECONDS
        bucket = string.strip(bucket, '/')
        dstpath = urllib.quote(string.strip(dstpath, '/'), '~/')
        url = self.generate_res_url(bucket, dstpath)
        auth = Auth(self._secret_id, self._secret_key)
        sha1 = self.sha1file(filepath)
        sign = auth.sign_more(bucket, expired)

        headers = {
            'Authorization': sign,
            'User-Agent': conf.get_ua(),
        }

        files = {
            'op': 'upload',
            'filecontent': open(filepath, 'rb'),
            'sha': sha1
        }
        if videoCover != None:
            files['video_cover'] = videoCover
        if title != None:
            files['video_title'] = title
        if desc != None:
            files['video_desc'] = desc
        if bizattr != None:
            files['biz_attr'] = bizattr
        if magiccontext != None:
            files['magiccontext'] = magiccontext

        return self.sendRequest('POST', url, headers=headers, files=files)
Exemple #11
0
	def upload_data(self,bucket,dstpath,data,session,offset):

		url = self.generate_res_url(bucket,dstpath)
		expired = int(time.time()) + self.EXPIRED_SECONDS
		auth = Auth(self._secret_id, self._secret_key)

		sha1 = hashlib.sha1();
		sha1.update(data)

		sign = auth.sign_more(bucket, expired)
		headers = {
			'Authorization':sign,
			'User-Agent':conf.get_ua(),
		}

		files = {'op': ('upload_slice'),'filecontent': data,'sha':sha1.hexdigest(),'session':session,'offset':str(offset)}
		return self.sendRequest('POST', url, headers=headers, files=files, timeout=(self.connect_timeout, self.read_timeout))
Exemple #12
0
	def __delete(self, bucket, path):
		if path == '' or path == '/':
			return {'httpcode':0, 'code':self.VIDEO_PARAMS_ERROR, 'message':'path cannot be empty', 'data':{}}
		expired = int(time.time()) + self.EXPIRED_SECONDS
		url = self.generate_res_url(bucket, path)
		auth = Auth(self._secret_id, self._secret_key)
		sign = auth.sign_once(bucket, '/'+str(conf.get_app_info()['appid'])+'/'+bucket+'/'+path)

		headers = {
			'Authorization':sign,
			'Content-Type':'application/json',
			'User-Agent':conf.get_ua(),
		}

		data = {'op':'delete'}

		return self.sendRequest('POST', url, headers=headers, data=json.dumps(data), timeout=(self.connect_timeout, self.read_timeout))
Exemple #13
0
	def createFolder(self, bucket, path, bizattr=''):
		expired = int(time.time()) + self.EXPIRED_SECONDS
		bucket = string.strip(bucket, '/')
		path = urllib.quote(string.strip(path, '/') + '/', '~/')
		url = self.generate_res_url(bucket, path)
		auth = Auth(self._secret_id, self._secret_key)
		sign = auth.sign_more(bucket, expired)

		headers = {
			'Authorization':sign,
			'Content-Type':'application/json',
			'User-Agent':conf.get_ua(),
		}

		data = {'op':'create','biz_attr':bizattr}

		return self.sendRequest('POST', url, headers=headers, data=json.dumps(data), timeout=(self.connect_timeout, self.read_timeout))
Exemple #14
0
    def upload_prepare(self, filepath, bucket, dstpath, videoCover, title,
                       desc, bizattr, slice_size, session, magiccontext):
        if not os.path.exists(filepath):
            return {
                'httpcode': 0,
                'code': self.VIDEO_FILE_NOT_EXISTS,
                'message': 'file not exists',
                'data': {}
            }

        url = self.generate_res_url(bucket, dstpath)
        expired = int(time.time()) + self.EXPIRED_SECONDS
        auth = Auth(self._secret_id, self._secret_key)
        size = os.path.getsize(filepath)
        sha1 = self.sha1file(filepath)
        sign = auth.sign_more(bucket, expired)

        headers = {
            'Authorization': sign,
            'User-Agent': conf.get_ua(),
        }

        files = {'op': ('upload_slice'), 'sha': sha1, 'filesize': str(size)}
        if videoCover != None:
            files['video_cover'] = videoCover
        if title != None:
            files['video_title'] = title
        if desc != None:
            files['video_desc'] = desc
        if bizattr != None:
            files['biz_attr'] = bizattr
        if slice_size > 0:
            files['slice_size'] = str(slice_size)
        if session != '':
            files['session'] = session
        if magiccontext != None:
            files['magiccontext'] = magiccontext

        return self.sendRequest('POST',
                                url,
                                headers=headers,
                                files=files,
                                timeout=(self.connect_timeout,
                                         self.read_timeout))
Exemple #15
0
    def __stat(self, bucket, path):
        expired = int(time.time()) + self.EXPIRED_SECONDS
        url = self.generate_res_url(bucket, path)
        auth = Auth(self._secret_id, self._secret_key)
        sign = auth.sign_more(bucket, expired)

        headers = {
            'Authorization': sign,
            'User-Agent': conf.get_ua(),
        }

        data = {'op': 'stat'}

        return self.sendRequest('GET',
                                url,
                                headers=headers,
                                params=data,
                                timeout=(self.connect_timeout,
                                         self.read_timeout))
Exemple #16
0
    def createFolder(self, bucket, path, bizattr=''):
        expired = int(time.time()) + self.EXPIRED_SECONDS
        bucket = string.strip(bucket, '/')
        path = urllib.quote(string.strip(path, '/') + '/', '~/')
        url = self.generate_res_url(bucket, path)
        auth = Auth(self._secret_id, self._secret_key)
        sign = auth.sign_more(bucket, expired)

        headers = {
            'Authorization': sign,
            'Content-Type': 'application/json',
            'User-Agent': conf.get_ua(),
        }

        data = {'op': 'create', 'biz_attr': bizattr}

        return self.sendRequest('POST',
                                url,
                                headers=headers,
                                data=json.dumps(data),
                                timeout=(self.connect_timeout,
                                         self.read_timeout))