示例#1
0
    def post(self, request, *args, **kwargs):
        data = request.data
        # id
        # pic_name
        # pic_path
        # pic_type
        id_card_list = []
        driver_license_list = []
        driving_license_list = []
        bank_card_list = []
        unsigned_list = []

        pic_name = data['pic_name']
        print(pic_name)
        pic_path = data['pic_path']
        print(pic_path)
        print(len(pic_path))
        for i in range(len(pic_path)):
            if pic_path[i].split('.')[-1] == 'zip' or pic_path[i].split(
                    '.')[-1] == 'rar' or pic_path[i].split('.')[-1] == 'gz':
                import oss2
                #ret = oss_rename(user_id, org_pic)
                auth = oss2.Auth('LTAIDGyxdSloVIAu',
                                 'WVOPeB83DdojWcfs3wF6X6Ry0XNZYU')
                # Endpoint以杭州为例,其它Region请按实际情况填写。
                bucket = oss2.Bucket(auth,
                                     'http://oss-cn-hangzhou.aliyuncs.com',
                                     'deepdraw-test')
                if pic_path[i].split('.')[-1] == 'zip':
                    bucket.get_object_to_file(pic_path[i], 'pic.zip')
                    z = zipfile.ZipFile('pic.zip', 'r')
                    z.extractall(
                        path=r"/root/deepdraw/untitled/xinyada/zip_pic")
                    z.close()
                elif pic_path[i].split('.')[-1] == 'rar':
                    print("file type is RAR")
                dir_list = os.listdir(
                    "/root/deepdraw/untitled/xinyada/zip_pic")
                zip_pic_name = []
                zip_pic_path = []
                for name in dir_list:
                    if name.split('.')[-1] == 'jpeg' or name.split(
                            '.')[-1] == 'jpg' or name.split('.')[-1] == 'png':
                        zip_pic_name.append(name)
                        uuid = get_uuid()
                        path = 'xinyada/zip/' + uuid + name.split('.')[-1]
                        zip_pic_path.append(path)
                #解压后遍历上传图片
                #for path,name in zip(zip_pic_path,zip_pic_name):
                #   bucket.put_object_from_file(path, "/root/deepdraw/untitled/xinyada/zip_pic/" + name )
                ret = {
                    'code': 1003,
                    'msg': '暂时不支持.zip/.rar/tar.gz等文件压缩包',
                    'pmeic_id_list': [],
                    # 'input_json':input_json,
                    #  'request_url':request_url,
                    'result': {
                        'id_card': id_card_list,
                        'driving_license': driving_license_list,
                        'driver_license': driver_license_list,
                        'bank_card': bank_card_list,
                        'unsigned': unsigned_list,
                    },
                    'pic_path': zip_pic_path,
                    'pic_name': zip_pic_name,
                }
                return JsonResponse(ret)

        pic_id_list = []
        for name, path in zip(pic_name, pic_path):
            obj = PicInfo.objects.create(pic_name=name,
                                         pic_path=path,
                                         pic_type=4)
            pic_id_list.append(obj.id)
        inputparams = []
        url_dic = {}
        pic_url = []
        for path in pic_path:
            url = 'https://deepdraw-test.oss-cn-hangzhou.aliyuncs.com/' + path
            url_dic['pic_url'] = url
            #  inputparams.append(url_dic)
            pic_url.append(url)
        result_list = []
        for url in pic_url:
            url_dic['pic_url'] = url
            inputparams = [url_dic]
            input_dic = {
                "action": "xinyada",
                "inputparams": inputparams,
                "model": "xinyada_model",
                "proj": "deeplab",
                "exec": "batch"
            }
            import json
            input_json = json.dumps(input_dic)
            request_url = 'http://47.96.132.7:8083/polls/analyze_str/?str=' + input_json
            print(request_url)
            import requests
            try:
                r = requests.get(request_url)
                #拿到返回json并反序列化为dic
            except:
                ret = {
                    'code': 1000,
                    'msg': '模型请求错误',
                    #	'model':r.text
                }
            #return JsonResponse(ret)
            print(r.text)
            data = json.loads(r.text)
            result_list.append(data['predictions'][0]['type'])

            #遍历返还的4种结果


#        id_card_list = []
#       driver_license_list = []
#      bank_card_list = []
#     unsigned_list = []

        for result, url in zip(result_list, pic_url):
            if result == "id_card":
                id_card_list.append(url)
            elif result == "driving_license":
                driving_license_list.append(url)
            elif result == "driver_license":
                driver_license_list.append(url)
            elif result == "bank_card":
                bank_card_list.append(url)
            else:
                unsigned_list.append(url)

        ret = {
            'code': '1001',
            'msg': '分析成功',
            'pic_id_list': pic_id_list,
            'input_json': input_json,
            'request_url': request_url,
            'result': {
                'id_card': id_card_list,
                'driving_license': driving_license_list,
                'driver_license': driver_license_list,
                'bank_card': bank_card_list,
                'unsigned': unsigned_list
            },
        }
        return JsonResponse(ret)
示例#2
0
import os

import oss2

# 默认,外网访问
endpoint = os.environ.get('OSS_ENDPOINT', 'oss-cn-beijing.aliyuncs.com')
# ECS 访问
# endpoint = 'oss-cn-beijing-internal.aliyuncs.com'

# RAM user lottery-upload-oss
access_key_id = ''
access_key_secret = ''
bucket_name = ''

auth = oss2.Auth(access_key_id, access_key_secret)
bucket = oss2.Bucket(auth, endpoint, bucket_name)


def upload_text(key, text):
    return bucket.put_object(key, text)


def upload_json(key, json_obj):
    upload_text(key, json.dumps(json_obj, indent=4))


def delete(key):
    bucket.delete_object(key)

# Download
# bucket.get_object(key).read()
def upload(auth, url, bucketName, videoName):
    bucket = oss2.Bucket(auth, url, bucketName)
    bucket.put_object_from_file(videoName, videoName)
示例#4
0
import oss2,os,re,shutil
from itertools import islice
from pymongo import MongoClient
conn = MongoClient('localhost', 27017)
db = conn.youtube_db
auth = oss2.Auth('LTAI9KoPJsTapdyo', '5kgYBIG3kGTLVjNXMdeOdg5xDZUgOi')
bucket = oss2.Bucket(auth, 'oss-cn-zhangjiakou.aliyuncs.com', 'my-mixwheel')

def oss_list():
    file_list = []
    for b in islice(oss2.ObjectIterator(bucket), 5000):
        file_list.append(b.key)
    return file_list
def oss_exist(out_path,file_name):
    return bucket.object_exists(out_path+file_name)
def oss_upload(local_path,out_path):
    for each in list_file(local_path):
        if not oss_exist(out_path,each):
            # bucket.put_object_from_file(out_path+each,local_path+each)
            # shutil.copy('E:/oss/video/'+each,'E:/oss/upload/'+each)
            db.col.remove({'video_id': each.split('.')[0]})
            print(each)
def oss_delete(file):
    bucket.delete_object(file)
def list_file(path):
    temp_list = []
    fs = os.listdir(path)
    if fs:
        for obj in fs:
            tmp_path = os.path.join(path, obj)
            if not os.path.isdir(tmp_path):
示例#5
0
 def upload_data(file_name, data):
     auth = oss2.Auth(SmsCodeConfig.access_key_id,
                      SmsCodeConfig.access_key_secret)
     bucket = oss2.Bucket(auth, MeFileConfig.endpoint,
                          MeFileConfig.bucket_name)
     bucket.put_object(file_name, data)
示例#6
0
#
# 以杭州区域为例,Endpoint是:
#   http://oss-cn-shenzhen.aliyuncs.com 或
#   https://oss-cn-shenzhen.aliyuncs.com
access_key_id = os.getenv('OSS_TEST_ACCESS_KEY_ID', '<您的AccessKeyId>')
access_key_secret = os.getenv('OSS_TEST_ACCESS_KEY_SECRET',
                              '<您的AccessKeySecret>')
bucket_name = os.getenv('OSS_TEST_BUCKET', '<您的Bucket>')
endpoint = os.getenv('OSS_TEST_ENDPOINT', '<您的访问域名>')

# 确认上面的参数都填写正确了
for param in (access_key_id, access_key_secret, bucket_name, endpoint):
    assert '<' not in param, '请设置参数:' + param

# 创建Bucket对象,所有直播相关的接口都可以通过Bucket对象来进行
bucket = oss2.Bucket(oss2.Auth(access_key_id, access_key_secret), endpoint,
                     bucket_name)

# 创建一个直播频道。
# 频道的名称是test_rtmp_live。直播生成的m3u8文件叫做test.m3u8,该索引文件包含3片ts文件,每片ts文件的时长为5秒(这只是一个建议值,具体的时长取决于关键帧)。
channel_name = 'test_rtmp_live'
playlist_name = 'test.m3u8'
create_result = bucket.create_live_channel(
    channel_name,
    oss2.models.LiveChannelInfo(status='enabled',
                                description='测试使用的直播频道',
                                target=oss2.models.LiveChannelInfoTarget(
                                    playlist_name=playlist_name,
                                    frag_count=3,
                                    frag_duration=5)))

# 创建直播频道之后拿到推流用的play_url(rtmp推流的url,如果Bucket不是公共读写权限那么还需要带上签名,见下文示例)和观流用的publish_url(推流产生的m3u8文件的url)。
示例#7
0
def create(access_id, access_secret, bucket, endpoint):
    auth = oss2.Auth(access_id, access_secret)
    oss_bucket = oss2.Bucket(auth, endpoint, bucket)
    return oss_bucket
示例#8
0
    def post(self, request, *args, **kwargs):

        data = request.data
        print(data)
        token = data['token']
        print('token' + str(token))
        user_id = str(data['user_id'])
        org_pic = data['org_pic']  #.split(',')
        pic_id_list = data['pic_id_list']  #.split(',')
        size = data['size']
        print('--org_pic:' + str(org_pic))
        print(type(org_pic))
        test_obj = UserToken.objects.filter(user_id=user_id, token=token)
        if not test_obj:
            ret = {
                'code': 1000,
                'msg': '认证失败',
            }
            return JsonResponse(ret)
        else:
            print('permision_ok')
            # source_obj = org_pic[0]
            # print(source_obj)
            # print(type(org_pic))
            try:
                ctime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
                #oss_rename(user_id, org_pic)
                import oss2
                #ret = oss_rename(user_id, org_pic)
                auth = oss2.Auth('LTAIDGyxdSloVIAu',
                                 'WVOPeB83DdojWcfs3wF6X6Ry0XNZYU')
                #Endpoint以杭州为例,其它Region请按实际情况填写。
                bucket = oss2.Bucket(auth,
                                     'http://oss-cn-hangzhou.aliyuncs.com',
                                     'deepdraw-test')
                url_list = []
                result_url_list = []
                for source_obj, pic_id in zip(org_pic, pic_id_list):

                    try_count = 0

                    #@retry()
                    def rename(source_obj, try_count):
                        try_count = try_count + 1
                        print('第{}次重试oss命名。'.format(try_count))
                        file_name = 'wzs_test.' + source_obj.split('.')[-1]
                        #source_obj = str(user_id)+'/pic/'+uuid+'.png'
                        # 下载OSS文件到本地文件。如果指定的本地文件存在会覆盖,不存在则新建。
                        bucket.get_object_to_file(source_obj, file_name)
                        #计算MD5
                        md5 = image_md5(file_name)
                        #生成新obj名字
                        new_obj_name = 'input_folder/' + str(
                            user_id
                        ) + '/pic/' + md5[:
                                          2] + '/' + md5 + '.' + source_obj.split(
                                              '.')[-1]
                        result_obj_name = 'input_folder/' + str(
                            user_id
                        ) + '/pic/' + md5[:
                                          2] + '/result_' + md5 + '.' + source_obj.split(
                                              '.')[-1]
                        bucket.copy_object('deepdraw-test', source_obj,
                                           new_obj_name)
                        bucket.delete_object(source_obj)
                        print('-----------source_obj:' + source_obj)
                        url = 'https://deepdraw-test.oss-cn-hangzhou.aliyuncs.com/' + new_obj_name
                        url_list.append(url)

                        print('-----------rename-oss-url:' + url)
                        return url, result_obj_name

                    #url,result_obj_name = rename(source_obj,try_count)  #md5后端重命名:input_folder/user_id/pic/md5[:2]/md5.png
                    if size == "800":
                        url = 'https://deepdraw-test.oss-cn-hangzhou-internal.aliyuncs.com/' + source_obj + '!resize_800'  #不重命名:user_id/pic/task_uuid/0.png
                    elif size == "1200":
                        url = 'https://deepdraw-test.oss-cn-hangzhou-internal.aliyuncs.com/' + source_obj + '!resize_1200'
                    else:
                        url = 'https://deepdraw-test.oss-cn-hangzhou-internal.aliyuncs.com/' + source_obj
                    result_obj_name = 'result/' + source_obj  #不重命名
                    url_list.append(url)
                    print(url_list)
                    if len(org_pic) == 1:
                        print('CALLING API')
                        result_url = deepdraw_product_matting(
                            url, pic_id, result_obj_name)  #调用抠图接口

                        result_url_list.append(result_url)
                    else:
                        print('CALLING API')
                        result_url = deepdraw_product_matting(
                            url, pic_id, result_obj_name)
                        result_url_list.append(result_url)

                ret = {
                    'code': 1001,
                    'msg': '抠图成功',
                    #   'task_id':obj.id,
                    #'url_list':url_list,
                    # 'result_url_list':result_url_list,#'result_pic':rmbg_pic_url_list,
                    #'result_pic':deepdraw_pic_url_list,
                }

            except:  #Exception as e:
                ret = {
                    'code': 1002,
                    'msg': '抠图失败',
                    'org_pic': org_pic,
                    #'url_list':url_list,
                    #'source_obj':source_obj,
                    #'new_obj_name':new_obj_name,
                }

        return JsonResponse(ret)
 def __init__(self, accessKeyId, accessKeySecret, endpoint, bucket):
     oss_auth = oss2.Auth(accessKeyId, accessKeySecret)
     self.oss_bucket = oss2.Bucket(oss_auth, endpoint, bucket)
示例#10
0
    def post(self, request, *args, **kwargs):

        data = request.data
        token = data['token']
        user_id = str(data['user_id'])
        org_pic = data['org_pic'].split(',')
        org_pic_name = data['org_pic_name']  #.split(',')
        error_pic_name = data['org_pic_name']  #.split(',')

        print('--org_pic:' + str(org_pic))
        '''
        if len(org_pic) != len(org_pic_name):
            ret = {'code': 1003,
                   'msg': '图片统计错误',
                   }
            return JsonResponse(ret)
        '''
        test_obj = UserToken.objects.filter(user_id=user_id, token=token)
        if not test_obj:
            ret = {
                'code': 1000,
                'msg': '认证失败',
            }
            return JsonResponse(ret)
        else:
            print('permision_ok')
            # source_obj = org_pic[0]
            # print(source_obj)
            # print(type(org_pic))
            try:
                obj = TaskInfo.objects.create(
                    user_id=str(data['user_id']),
                    task_status=data['task_status'],
                    org_pic=str(data['org_pic']),
                    org_pic_name=str(data['org_pic_name']),
                    error_pic_name=str(data['error_pic_name']))
                ctime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
                #oss_rename(user_id, org_pic)
                import oss2
                #ret = oss_rename(user_id, org_pic)
                auth = oss2.Auth('LTAIDGyxdSloVIAu',
                                 'WVOPeB83DdojWcfs3wF6X6Ry0XNZYU')
                # Endpoint以杭州为例,其它Region请按实际情况填写。
                bucket = oss2.Bucket(auth,
                                     'http://oss-cn-hangzhou.aliyuncs.com',
                                     'deepdraw-test')
                pic_id_list = creat_pic(org_pic, org_pic_name, user_id,
                                        error_pic_name, obj.id)
                #for source_obj in org_obj:
                url_list = []
                result_url_list = []
                for source_obj, pic_id in zip(org_pic, pic_id_list):
                    print('pic_id:' + str(pic_id))

                    try_count = 0

                    #@retry()
                    def rename(source_obj, try_count):
                        try_count = try_count + 1
                        print('第{}次重试oss命名。'.format(try_count))
                        file_name = 'wzs_test.' + source_obj.split('.')[-1]
                        #source_obj = str(user_id)+'/pic/'+uuid+'.png'
                        # 下载OSS文件到本地文件。如果指定的本地文件存在会覆盖,不存在则新建。
                        bucket.get_object_to_file(source_obj, file_name)
                        #计算MD5
                        md5 = image_md5(file_name)
                        #生成新obj名字
                        new_obj_name = 'input_folder/' + str(
                            user_id
                        ) + '/pic/' + md5[:
                                          2] + '/' + md5 + '.' + source_obj.split(
                                              '.')[-1]
                        result_obj_name = 'input_folder/' + str(
                            user_id
                        ) + '/pic/' + md5[:
                                          2] + '/result_' + md5 + '.' + source_obj.split(
                                              '.')[-1]
                        # print(source_obj)
                        # print(new_obj_name)

                        #通过copy-delete重命名

                        bucket.copy_object('deepdraw-test', source_obj,
                                           new_obj_name)
                        bucket.delete_object(source_obj)
                        print('-----------source_obj:' + source_obj)
                        url = 'https://deepdraw-test.oss-cn-hangzhou.aliyuncs.com/' + new_obj_name
                        url_list.append(url)

                        print('-----------rename-oss-url:' + url)
                        return url, result_obj_name

                    #url,result_obj_name = rename(source_obj,try_count)  #md5后端重命名:input_folder/user_id/pic/md5[:2]/md5.png
                    url = 'https://deepdraw-test.oss-cn-hangzhou.aliyuncs.com/' + source_obj  #不重命名:user_id/pic/task_uuid/0.png
                    result_obj_name = 'result/' + source_obj  #不重命名
                    url_list.append(url)
                    if len(org_pic) == 1:
                        result_url = deepdraw_product_matting(
                            url, pic_id, result_obj_name)  #调用抠图接口
                        print('CALLING API')
                        result_url_list.append(result_url)
                    else:
                        result_url = deepdraw_product_matting(
                            url, pic_id, result_obj_name)
                        print('CALLING API')
                        result_url_list.append(result_url)
                        pass
            #  if len(org_pic) != 1:
            #  result_url = deepdraw_product_matting(url,pic_id)   #调用抠图接口
            # print('CALLING API')
            # result_url_list.append(result_url)
            #result_url_list= deepdraw_batch(url_list,pic_id_list)

            #rmbg_pic_url_list = ess_sdk(user_id,url_list,org_pic)  #remove.bg接口,要配置ssl证书
            #deepdraw_pic_url_list = deepdraw_product_matting()
                ret = {
                    'code': 1001,
                    'msg': '抠图成功',
                    'ctime': ctime,
                    'task_id': obj.id,
                    'pic_id_list': pic_id_list,
                    'url_list': url_list,
                    'result_url_list':
                    result_url_list,  #'result_pic':rmbg_pic_url_list,
                    #'result_pic':deepdraw_pic_url_list,
                }

            except:  #Exception as e:
                ret = {
                    'code': 1002,
                    'msg': '抠图失败',
                    'org_pic': org_pic,
                    #'url_list':url_list,
                    #'source_obj':source_obj,
                    #'new_obj_name':new_obj_name,
                }

        return JsonResponse(ret)
示例#11
0
    def post(self, request, *args, **kwargs):

        data = request.data
        token = data['token']
        user_id = data['user_id']
        org_pic = data['org_pic']  #.split(',')
        org_pic_name = data['org_pic_name']  #.split(',')
        error_pic_name = data['org_pic_name']  #.split(',')
        bg = data['bg']
        size = data['size']
        org_size = data['org_size']
        print('--org_pic:' + str(org_pic))

        test_obj = UserToken.objects.filter(user_id=user_id, token=token)
        if not test_obj:
            ret = {
                'code': 1000,
                'msg': '认证失败',
            }
            return JsonResponse(ret)
        else:
            print('permision_ok')
            try:
                obj = TaskInfo.objects.create(
                    user_id=data['user_id'],
                    task_status=data['task_status'],
                    org_pic=data['org_pic'],
                    org_pic_name=data['org_pic_name'],
                    error_pic_name=data['error_pic_name'],
                    bg=bg,
                    size=size,
                    org_size=org_size,
                )
                url_list = []
                for source_obj in org_pic:
                    url = 'https://deepdraw-test.oss-cn-hangzhou.aliyuncs.com/' + source_obj
                    url_list.append(url)
                ctime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
                #oss_rename(user_id, org_pic)
                import oss2
                #ret = oss_rename(user_id, org_pic)
                auth = oss2.Auth('LTAIDGyxdSloVIAu',
                                 'WVOPeB83DdojWcfs3wF6X6Ry0XNZYU')
                # Endpoint以杭州为例,其它Region请按实际情况填写。
                bucket = oss2.Bucket(auth,
                                     'http://oss-cn-hangzhou.aliyuncs.com',
                                     'deepdraw-test')
                pic_id_list = creat_pic_v2(org_pic, org_pic_name, user_id,
                                           error_pic_name, obj.id, bg, size,
                                           org_size)
                ret = {
                    'code': 1001,
                    'msg': '任务提交成功',
                    'task_id': obj.id,
                    'pic_id_list': pic_id_list,
                    'url_list': url_list,
                }
            except:
                ret = {
                    'code': 1000,
                    'msg': '任务提交失败',
                }
        return JsonResponse(ret)
from backend.test import *
import oss2
from backend.utils.call_metadata import get_identifier

auth = oss2.Auth('LTAI6huPFcsniRHT', 'Qo7kumR85OhK6nbez0IVKyTWYX4Beq')
bucket = oss2.Bucket(auth, 'oss-cn-shenzhen.aliyuncs.com',
                     'bucket-for-2019-hitsz')


class TestDelete(unittest.TestCase):
    def test_delete(self):
        self.assertEqual(
            delete_document(document_id='5d0f2f7c3e02f9e99c246720',
                            user_id='5d0f29a33e02f9e99c246717'), 200)


class UploadTest(unittest.TestCase):
    def test_upload(self):
        f = open('doi.pdf', 'rb')
        a = bucket.put_object('Unittest.pdf', f)
        f.close()
        self.assertEqual(type(a), oss2.models.PutObjectResult)


class GetIdentifierTest(unittest.TestCase):
    def test_get_id(self):
        identifier = {'doi': '10.1016/j.patcog.2012.09.005'}
        f1 = open('doi.pdf', 'rb')
        j = get_identifier(f1)
        f1.close()
        self.assertEqual(j, identifier)
示例#13
0
 def set_up(cls):
     if cls.bucket is None:
         auth = oss2.Auth(cls.AKID, cls.AK_SEC)
         cls.bucket = oss2.Bucket(auth, cls.ENDPOINT, cls.BUCKET, connect_timeout=1)
示例#14
0
 def __init__(self, bucket):
     self.bucket_name = bucket
     self.region = 'oss-cn-hangzhou.aliyuncs.com'
     self.auth = oss2.Auth('LTAI4bC7jVIhaiNm', 'Eqc42Xv1hOcBZVaNhwtjHERQqW8qVh')
     self.bucket = oss2.Bucket(self.auth, 'http://{}'.format(self.region), self.bucket_name)
示例#15
0
# 阿里云上传备份
import oss2
import time
import os
import shutil
from itertools import islice

Access_Key_ID = 'BjvM10cmtaCKpnuF'
Access_Key_Secret = 'tWChZrQKfjvTDD8FJQzm9m06mogE96'
endpoint = 'oss-cn-hangzhou.aliyuncs.com'
auth = oss2.Auth(Access_Key_ID, Access_Key_Secret)
service = oss2.Service(auth, endpoint, connect_timeout=30)
#print([b.name for b in oss2.BucketIterator(service)])
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', 'wbs')
print(bucket.bucket_name)
number = input('no:')
path = input('part:')
# C:\Users\Administrator\DataScraperWorks
#for b in islice(oss2.ObjectIterator(bucket), 10):
#    print(b.key)
#bucket.put_object_from_file('remote.txt', 'local.txt')
#bucket.get_object_to_file('remote.txt', 'local-backup.txt')
os.chdir(r'D:\recdate\hdusec-3\DataScraperWorks\search_part1')
if not os.path.exists('./ok'):
    os.mkdir('./ok')

ISOTIMEFORMAT = '%Y-%m-%d %X'
file_list = []

while True:
    currentDirFiles = os.listdir("./")
示例#16
0
import oss2
from bucket.bucket_setting import BUCKET_INFO
from itertools import islice

AKI = BUCKET_INFO['access_key_id']
AKS = BUCKET_INFO['access_key_secret']
BN = BUCKET_INFO['bucket_name']
INT_INSIDER = BUCKET_INFO['internal_endpoint']
INT_OUTSIDER = BUCKET_INFO['intranet_endpoint']
INT_SPEEDUP = BUCKET_INFO['speedup_endpoint']
PERMISSION = BUCKET_INFO['permission']
AUTH = oss2.Auth(AKI, AKS)
BUCKET = oss2.Bucket(AUTH, INT_INSIDER, BN)


class uploadobj():
    def simpleupload(self, objname, uploadobj, islocalfile=False):
        """
        简单上传
        :param objname: str,bucket完整路径
        :param uploadobj: 上传的对象,可以是字符串,Bytes,Unicode,本地文件路径,网络流
        :islocalfile: True是本地文件
        :return: PutObjectResult <oss2.models.PutObjectResult>
        """
        if islocalfile:
            result = BUCKET.put_object_from_file(objname, uploadobj)
            return result
        else:
            result = BUCKET.put_object(objname, uploadobj)
            return result
示例#17
0
# 参数说明:
#    参数1: 需要备份的文件路径
#    参数2: 远端的目录, 不能以'/'作为开头和结尾

import os
import sys
import time
import oss2
from oss2 import SizedFileAdapter, determine_part_size
from oss2.models import PartInfo
from tools import weChatMsg

# OSS相关验证信息
auth = oss2.Auth('<KEY>','<SECRET>')
endpoint = '<ENDPOINT>'
bucket = oss2.Bucket(auth, endpoint, '<BUCKET>')

# 企业微信相关信息
corpid = '<CORPID>'
agentId = <AGENGID>
corpsecret = '<CORP_SECRET>'
url = 'https://qyapi.weixin.qq.com'


if len(sys.argv) !=  3:
    print("参数不正确!")
    exit(1)

# 获取备份文件名
if os.path.exists(sys.argv[1]):
    filename = sys.argv[1]
示例#18
0
def init_bucket():
    auth = oss2.Auth('LTAInxELbFWfNSjr', 'Nu0UxZpZcpNBeJJAfvLRKUgmSARZFV')
    bucket = oss2.Bucket(auth, 'oss-cn-hangzhou.aliyuncs.com', 'xxroom')
    return bucket
示例#19
0
    def save_models(self):
        shop_obj = self.new_obj

        # 获取当前登录用户
        shop_manager = None
        try:
            shop_manager = ShopManager.objects.get(user_ptr_id=self.user.id)
        except:
            shop_manager = None

        # current_shop_id = shop_manager.shop_id
        shop_obj.save()

        # 店铺展示图片
        if shop_obj.shop_img != None:
            current_time_prefix = datetime.datetime.now().strftime(
                "%Y_%m_%d_%H_%M_%S_%f")[:-3]
            img_link_name = shop_obj.shop_img.name[shop_obj.shop_img.name.
                                                   rfind('/') + 1:]
            full_img_link_name = "shop_cert_front_" + current_time_prefix + '_' + img_link_name
            imgpath = settings.MEDIA_ROOT + '/' + shop_obj.shop_img.name
            bucket = oss2.Bucket(oss_auth,
                                 oss_cname,
                                 'juye-yiyuanduobao',
                                 is_cname=True)
            bucket.put_object_from_file(full_img_link_name, imgpath)
            shop_obj.shop_img_oss_link = settings.OSS_PATH_PREFIX + full_img_link_name

        # 证件正面图片
        if shop_obj.cert_front != None:
            current_time_prefix = datetime.datetime.now().strftime(
                "%Y_%m_%d_%H_%M_%S_%f")[:-3]
            img_link_name = shop_obj.cert_front.name[shop_obj.cert_front.name.
                                                     rfind('/') + 1:]
            full_img_link_name = "shop_cert_front_" + current_time_prefix + '_' + img_link_name
            imgpath = settings.MEDIA_ROOT + '/' + shop_obj.cert_front.name
            bucket = oss2.Bucket(oss_auth,
                                 oss_cname,
                                 'juye-yiyuanduobao',
                                 is_cname=True)
            bucket.put_object_from_file(full_img_link_name, imgpath)
            shop_obj.cert_front_link = settings.OSS_PATH_PREFIX + full_img_link_name

        # 证件反面图片
        if shop_obj.cert_back != None:
            current_time_prefix = datetime.datetime.now().strftime(
                "%Y_%m_%d_%H_%M_%S_%f")[:-3]
            img_link_name = shop_obj.cert_back.name[shop_obj.cert_back.name.
                                                    rfind('/') + 1:]
            full_img_link_name = "shop_cert_front_" + current_time_prefix + '_' + img_link_name
            imgpath = settings.MEDIA_ROOT + '/' + shop_obj.cert_back.name
            bucket = oss2.Bucket(oss_auth,
                                 oss_cname,
                                 'juye-yiyuanduobao',
                                 is_cname=True)
            bucket.put_object_from_file(full_img_link_name, imgpath)
            shop_obj.cert_back_link = settings.OSS_PATH_PREFIX + full_img_link_name

        shop_obj.save()
        if shop_manager and shop_manager.is_agent == True:  # 如果是代理商
            shop_manager.agent_shops.add(shop_obj)
            shop_manager.save()
示例#20
0
def download(filename):
    auth = oss2.Auth('您的AccessKeyId', '您的AccessKeySecret')
    bucket = oss2.Bucket(auth, '您的Endpoint', '您的Bucket名')
    bucket.get_object_to_file(filename, filename, progress_callback=percentage)
示例#21
0
 def __init__(self, access_key_id, access_key_secret):
     # 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
     __auth = oss2.Auth(access_key_id, access_key_secret)
     # Endpoint以杭州为例,其它Region请按实际情况填写。
     self._bucket = oss2.Bucket(__auth, settings.oss_endpoint,
                                settings.oss_bucket)
示例#22
0
# -*- encoding: utf-8 -*-

import copy, uuid, base64, urllib, xlrd, xlwt, oss2, json

auth = oss2.Auth('LTAIy1XF2bUUWM6N', 'GqomKcGskXOIQdbHVVHmMiIrqjjavp')
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou-internal.aliyuncs.com',
                     'image-hub360-b2b')
# 准备回调参数
callback_dict = {}
callback_dict['callbackUrl'] = 'http://oss-demo.aliyuncs.com:23450'
callback_dict['callbackHost'] = 'oss-cn-hangzhou.aliyuncs.com'
callback_dict[
    'callbackBody'] = 'filename=${object}&size=${size}&mimeType=${mimeType}'
callback_dict['callbackBodyType'] = 'application/x-www-form-urlencoded'
# 回调参数是json格式,并且需要base64编码
callback_param = json.dumps(callback_dict).strip()
base64_callback_body = base64.b64encode(callback_param)
# 回调参数编码后放在header中传给oss
headers = {'x-oss-callback': base64_callback_body}
# 上传并回调
result = bucket.put_object('/Users/king/Desktop/upc.xls', 'a' * 1024 * 1024,
                           headers)
print result
示例#23
0
    def __init__(self, bucket):

        self._auth = oss2.Auth(ALI_ACCESSKEYID, ALI_ACCESSKEYSECRET)
        self._bucket = oss2.Bucket(self._auth, OSS_ENDPOINT, bucket)
示例#24
0
def handler(event, context):
    uid_count = 20

    d_list = [201801, 201802, 201803, 201804, 201805]
    # d_list = [201801,201802,201803,201804,201805,201806,201807,201808,201809,201810,201811]
    user_list = ['*****@*****.**']

    tmpdir = '/tmp/weibo/'
    # oss
    region = "cn-hangzhou-internal"
    bucketname = "leo-hangzhou"
    oss_uid_list = "configuration/weibo_uid_list"
    oss_json_path = "process/weibo_json/"

    # table storehang'zhou
    instance_name = 'leo-ts-hangzhou'
    ts_log = 'table_store.log'
    tbl = 'log_weibo'
    err_tbl = 'log_weibo_error'
    ts_region = 'cn-hangzhou.ots'
    ts_endpoint = 'https://{0}.{1}.aliyuncs.com'.format(
        instance_name, ts_region)
    access_key_id = 'LTAIi3mUQglhfB3D'
    access_key_secret = 'y4acQJO0QkoCbaPipQDFD2idfNOVqJ'

    datekey_uid = int((datetime.datetime.utcnow() +
                       datetime.timedelta(hours=8)).strftime('%Y%m%d'))
    os.system("rm -rf /tmp/*")
    os.mkdir(tmpdir)

    logger = logging.getLogger()
    logger.info(
        (datetime.datetime.utcnow() +
         datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
        '--------------------------------------------------------------------------------------'
    )
    logger.info((datetime.datetime.utcnow() +
                 datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                ' Start WeiboUid')

    endpoint = 'oss-{0}.aliyuncs.com'.format(region)
    creds = context.credentials
    auth = oss2.StsAuth(creds.accessKeyId, creds.accessKeySecret,
                        creds.securityToken)
    bucket = oss2.Bucket(auth, endpoint, bucketname)

    # get the weibo uids
    uids = []
    logger.info((datetime.datetime.utcnow() +
                 datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                ' Step 1 : get weibo uids from oss')
    # if the uid_list is not exists
    if bucket.object_exists(oss_uid_list):
        content = bucket.get_object(oss_uid_list)
        uids = content.read().decode('utf-8').split("\r\n")
        uids.sort()
    else:
        logger.info((datetime.datetime.utcnow() + datetime.timedelta(hours=8)
                     ).strftime('%Y-%m-%d %H:%M:%S') +
                    ' ERROR!!! cant find uids file from oss')
        exit(1)
    # uids=["1817559703"]

    # initialize the uids
    logger.info((datetime.datetime.utcnow() +
                 datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                ' Step 2 : initialize the uids status')
    # connect to the table store
    ots_client = OTSClient(ts_endpoint,
                           access_key_id,
                           access_key_secret,
                           instance_name,
                           socket_timeout=10,
                           logger_name=ts_log)
    for uid in uids:
        pk = [('uid', int(uid))]
        # if no this uid
        if get_col(ots_client, tbl, pk, ['status'], None) == 'NoData':
            attr = [
                ('status', 'waiting'),
                ('update_timestamp',
                 (datetime.datetime.utcnow() +
                  datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S')),
                ('update_time', int(time.time()))
            ]
            put_row(ots_client, tbl, pk, attr)

    # get last runtime
    logger.info((datetime.datetime.utcnow() +
                 datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                ' Step 3 : get the last runtime status')
    pk = [('uid', datekey_uid)]
    checkpoint = 0
    last_runtime = int(time.time())
    last_runtimestamp = (
        datetime.datetime.utcnow() +
        datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S')
    # if no last runtime status record, initialize
    if get_col(ots_client, tbl, pk,
               ['update_time'], None) == 'NoData' or get_col(
                   ots_client, tbl, pk, ['status'], None) != ','.join(uids):
        attr = [('name', datekey_uid), ('status', ','.join(uids)),
                ('update_timestamp', last_runtimestamp),
                ('update_time', last_runtime), ('checkpoint', checkpoint)]
        put_row(ots_client, tbl, pk, attr)
        # if no change, get the last checkpoint
    else:
        cols = ['checkpoint']
        checkpoint = get_col(ots_client, tbl, pk, cols, None)
    logger.info((datetime.datetime.utcnow() +
                 datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                ' last runtime checkpoint is ' + str(checkpoint))

    # loop uid to analysis
    logger.info((datetime.datetime.utcnow() +
                 datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                ' Step 4 : start to analysis weibo content')
    print(
        str(checkpoint) + ' ' + str(len(uids)) + ' ' +
        str(get_col(ots_client, tbl, pk, ['name'], None)))
    # if all the uids are analysed today
    if checkpoint + 1 >= len(uids) and get_col(ots_client, tbl, pk, ['name'],
                                               None) == datekey_uid:
        logger.info(
            (datetime.datetime.utcnow() +
             datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
            ' Step 5 :  all the uids are analysed today! exit the script! (checkpoint:'
            + str(checkpoint) + ' totally:' + str(len(uids)) + ')')
        return 'Congratulations! no uids are left! ' + (
            datetime.datetime.utcnow() +
            datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S')
    # if this is the last run
    if checkpoint + uid_count > len(uids):
        endp = len(uids)
    else:
        endp = checkpoint + uid_count

    # loop current run
    for i in range(checkpoint, endp):
        logger.info((datetime.datetime.utcnow() + datetime.timedelta(hours=8)
                     ).strftime('%Y-%m-%d %H:%M:%S') + ' Step 5 (' +
                    str(i + 1) + '/' + str(endp) +
                    ') : start to analyse uid: ' + uids[i])
        request_status = ''
        # loop the months
        for d in d_list:
            try:
                logger.info((datetime.datetime.utcnow() + datetime.timedelta(
                    hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
                            ' Step 5.1 start to analyse uid: ' + uids[i] +
                            ' date: ' + str(d))
                loop_starttime = (datetime.datetime.utcnow() +
                                  datetime.timedelta(hours=8))
                # get the weibo content
                request_page = 1
                global content_j
                page_hasNext = True
                # 怎么判断pageToken
                while page_hasNext:
                    content_j = weibo_content(uids[i], d, request_page)
                    page_hasNext = content_j['hasNext']
                    request_status = content_j["retcode"]

                    print('start to unload page ' + str(request_page) +
                          '......')
                    for content_data in content_j['data']:
                        publish_year = content_data['mblog'][
                            'localPublishDateStr'][0:4]
                        publish_month = content_data['mblog'][
                            'localPublishDateStr'][5:7]
                        publish_date = content_data['mblog'][
                            'localPublishDateStr'][8:10]
                        json_file = oss_json_path + publish_year + '/' + publish_month + '/' + publish_date + '/' + str(
                            uids[i]) + '/' + content_data['id'] + '.json'
                        # bucket.put_object(json_file, json.dumps(content_data))
                        bucket.put_object(json_file,
                                          '{0}'.format(content_data))

                    print('page ' + str(request_page) + " finished......")
                    time.sleep(1)
                    request_page = request_page + 1

                print(str(uids[i]) + str(d) + '解析完毕......')
            except Exception as e:
                request_status = str(e)
                pk = [('uid', int(uids[i])), ('datekey', datekey_uid)]
                attr = [('error_log', str(e)),
                        ('update_timestamp',
                         (datetime.datetime.utcnow() + datetime.timedelta(
                             hours=8)).strftime('%Y-%m-%d %H:%M:%S')),
                        ('update_time', int(time.time()))]
                put_row(ots_client, err_tbl, pk, attr)
                logger.info((datetime.datetime.utcnow() + datetime.timedelta(
                    hours=8)).strftime('%Y-%m-%d %H:%M:%S') + '"' +
                            str(uids[i]) + ' ' + str(d) + ' "解析失败????...:' +
                            str(e))
            time.sleep(1)
        # if finished
        pk = [('uid', int(uids[i]))]
        attr = [('name', int(uids[i])), ('status', str(request_status)),
                ('update_timestamp',
                 (datetime.datetime.utcnow() +
                  datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S')),
                ('update_time', int(time.time()))]
        put_row(ots_client, tbl, pk, attr)
        # if finished
        pk = [('uid', datekey_uid)]
        attr = [('name', datekey_uid), ('status', ','.join(uids)),
                ('update_timestamp',
                 (datetime.datetime.utcnow() +
                  datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S')),
                ('update_time', int(time.time())), ('checkpoint', i)]
        put_row(ots_client, tbl, pk, attr)

    # sub = str(len(uids)) + ' uids are requested finished! pls check the log?'
    # content = 'log link : XXXXX?'
    # send_mail(user_list, sub, content)
    if checkpoint + 1 >= len(uids) and get_col(ots_client, tbl, pk, ['name'],
                                               None) == datekey_uid:
        logger.info(
            (datetime.datetime.utcnow() +
             datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') +
            ' Step 6 :  all the uids are analysed today! exit the script! (checkpoint:'
            + str(checkpoint) + ' totally:' + str(len(uids)) + ')')
        sub = str(
            len(uids)) + ' uids are requested finished! pls check the log?'
        content = 'log link : XXXXX?'
        send_mail(user_list, sub, content)
    return 'Congratulations! ' + (
        datetime.datetime.utcnow() +
        datetime.timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S')
示例#25
0
文件: oss.py 项目: aircjm/limon
#os.path.abspath(os.curdir)
def dirlist(path):

    for file in os.listdir(path):
        filepath = os.path.join(path, file)

        if os.path.isdir(filepath):
            dirlist(filepath)
        elif not filepath.endswith("robots.txt"):
            allfile.append(filepath)


dirlist(curdir)

auth = oss2.Auth(conf['OSS']['AccessKeyId'], conf['OSS']['AccessKeySecret'])

bucket = oss2.Bucket(auth, conf['OSS']['EndPoint'], conf['OSS']['Bucket'])

for file in allfile:
    ret = bucket.put_object_from_file(file.replace(curdir, "limon"), file)
    print(ret.status, "   ", file)

for file in allfile:
    if file.find('index.html') >= 0 or file.find('manifest.json') >= 0:
        continue
    os.system('rm -rf ' + file)
    print(
        os.system('rm -rf ' + file),
        'rm -rf ' + file,
    )
示例#26
0
    def to_import_execl(self, request, objs):
        try:
            BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
            MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
            # 写入execl
            path = MEDIA_ROOT + 'download_xls/' + request.user.username
            # if not os.path.exists(path):
            mkdir_p(MEDIA_ROOT + 'download_xls')
            os.popen('chmod 777 %s' % (MEDIA_ROOT + 'download_xls'))
            mkdir_p(path)
            os.popen('chmod 777 %s' % (path))
            w = Workbook()
            row = 0
            sheet = w.add_sheet(u'校验交付数据')
            style = XFStyle()

            sheet.write(0, 0, u'日期', style)  # 日期
            sheet.write(0, 1, u'SKU', style)  # SKU
            sheet.write(0, 2, u'采购员', style)  # 采购员
            sheet.write(0, 3, u'商品名称', style)  # 商品名称
            sheet.write(0, 4, u'建议采购数量', style)  # 建议采购数量
            sheet.write(0, 5, u'采购数量', style)  # 采购数量
            sheet.write(0, 6, u'完成数量', style)  # 完成数量
            sheet.write(0, 7, u'采购备注', style)  # 采购备注
            sheet.write(0, 8, u'派发工厂', style)  # 派发工厂
            sheet.write(0, 9, u'排单备注', style)  # 排单备注
            sheet.write(0, 10, u'生产天数', style)  # 生产天数
            sheet.write(0, 11, u'采购等级', style)  # 采购等级

            for obj in objs:
                row = row + 1
                if obj.createDate is not None:
                    sheet.write(row, 0, str(obj.createDate), style)  # 日期
                else:
                    sheet.write(row, 0, '', style)  # 日期
                sheet.write(row, 1, obj.SKU, style)  # SKU
                if obj.buyer is not None:
                    sheet.write(row, 2, obj.buyer, style)  # 采购员
                else:
                    sheet.write(row, 2, '', style)  # 采购员
                if obj.goodsName is not None:
                    sheet.write(row, 3, obj.goodsName, style)  # 商品名称
                else:
                    sheet.write(row, 3, '', style)  # 商品名称
                if obj.SuggestNum is not None:
                    sheet.write(row, 4, obj.SuggestNum, style)  # 建议采购数量
                else:
                    sheet.write(row, 4, 0, style)  # 建议采购数量
                if obj.productNumbers is not None:
                    sheet.write(row, 5, obj.productNumbers, style)  # 采购数量
                else:
                    sheet.write(row, 5, 0, style)  # 采购数量
                if obj.completeNumbers is not None:
                    sheet.write(row, 6, obj.completeNumbers, style)  # 完成数量
                else:
                    sheet.write(row, 6, 0, style)  # 完成数量
                strRemark = ''
                if obj.remarkApply is not None:
                    strRemark = obj.remarkApply
                    if obj.remarkSpeModify is not None:
                        strRemark = strRemark + "," +obj.remarkSpeModify
                        if obj.remarkConfirm is not None:
                            strRemark = strRemark + "," + obj.remarkConfirm
                    else:
                        if obj.remarkConfirm is not None:
                            strRemark = strRemark + "," + obj.remarkConfirm
                else:
                    if obj.remarkSpeModify is not None:
                        strRemark = strRemark + "," + obj.remarkSpeModify
                        if obj.remarkConfirm is not None:
                            strRemark = strRemark + "," + obj.remarkConfirm
                    else:
                        if obj.remarkConfirm is not None:
                            strRemark = strRemark + "," + obj.remarkConfirm
                sheet.write(row, 7, strRemark, style)  # 采购备注
                sheet.write(row, 8, obj.outFactory, style)  # 派发工厂
                if obj.remarkDisPatch is not None:
                    sheet.write(row, 9, (obj.remarkDisPatch).replace("#@#",';'), style)  # 排单备注
                else:
                    sheet.write(row, 9, '', style)  # 排单备注

                diffDay = 0
                if obj.auditDate is not None:
                    diffDay = (confirmDate.now() - obj.auditDate).days
                sheet.write(row, 10, str(diffDay), style)  # 生产天数

                if obj.OSCode is None or obj.OSCode == 'OS905': # 采购等级
                    sheet.write(row, 11, u'OS905:工期5天(建议采购15天量、联动采购16~17天量)', style)
                elif obj.OSCode == 'OS901': # 采购等级
                    sheet.write(row, 11, u'OS901:工期3天(建议采购10天量、联动采购11~14天量)', style)
                elif obj.OSCode == 'OS902': # 采购等级
                    sheet.write(row, 11, u'OS902:工期5天(建议采购15天量、联动采购16~17天量)', style)
                elif obj.OSCode == 'OS903': # 采购等级
                    sheet.write(row, 11, u'OS903:工期7天(建议采购15天量、联动采购16~19天量)', style)
                elif obj.OSCode == 'OS904': # 采购等级
                    sheet.write(row, 11, u'OS904:工期15天(建议采购20天)', style)
                elif obj.OSCode == 'OS906': # 采购等级
                    sheet.write(row, 11, u'OS906:工期5天(Amazon服装采购)', style)
                elif obj.OSCode == 'OS909': # 采购等级
                    sheet.write(row, 11, u'OS909:工期5天(建议采购20天量)', style)
                else:
                    sheet.write(row, 11, u'OS905:工期5天(建议采购15天量、联动采购16~17天量)', style)

            filename = request.user.username + '_' + confirmDate.now().strftime('%Y%m%d%H%M%S') + '.xls'
            w.save(path + '/' + filename)
            os.popen(r'chmod 777 %s' % (path + '/' + filename))
            # 上传oss对象
            auth = oss2.Auth(ACCESS_KEY_ID, ACCESS_KEY_SECRET)
            bucket = oss2.Bucket(auth, ENDPOINT, BUCKETNAME_XLS)
            bucket.create_bucket(oss2.BUCKET_ACL_PUBLIC_READ)
            # 删除现有的
            for object_info in oss2.ObjectIterator(bucket,
                                                   prefix='%s/%s_' % (request.user.username, request.user.username)):
                bucket.delete_object(object_info.key)
            bucket.put_object(u'%s/%s' % (request.user.username, filename), open(path + '/' + filename))
        except Exception as e:
            messages.info(self.request,"导出数据到execl报错:%s,请联系开发人员"%(str(e)))
示例#27
0
文件: upload.py 项目: 314937885/mycms
#encoding:utf-8
import oss2
import os, sys
from datetime import datetime
auth = oss2.Auth('LTAIkjj8twuSyGfv', 'EI8KJb6iCpPAytr4mqd4u3Zm9fNsh9')

bucket = oss2.Bucket(auth, 'oss-cn-beijing.aliyuncs.com', 'donghaocms')

base_posts_url = 'https://donghaocms.oss-cn-beijing.aliyuncs.com/posts/'
base_avater_url = 'https://donghaocms.oss-cn-beijing.aliyuncs.com/avater/'
base_groups_url = 'https://donghaocms.oss-cn-beijing.aliyuncs.com/groups/'
base_images_url = 'https://donghaocms.oss-cn-beijing.aliyuncs.com/images/'

bucket_post = oss2.Bucket(auth, 'oss-cn-beijing.aliyuncs.com', 'donghaocms')


def change_filename(filename):
    dt = datetime.now()
    time = dt.strftime('%Y%m%d%H%M%S')
    filename = time + filename
    return filename


def percentage(consumed_bytes, total_bytes):
    if total_bytes:
        rate = int(100 * (float(consumed_bytes) / float(total_bytes)))
        print('\r{0}% '.format(rate), end='')
        sys.stdout.flush()
示例#28
0
import oss2

auth = oss2.Auth('LTAIKdjn445KIAfy', 'd78fFsDltKYIRC5mrsP6yIvGbtWshb')

bucket = oss2.Bucket(auth, 'mgwebsite.oss-cn-shanghai.aliyuncs.com',
                     'mgwebsite')

bucket.create_bucket()
示例#29
0
def download(auth, url, bucketName, videoName, sourceName):
    bucket = oss2.Bucket(auth, url, bucketName)
    bucket.get_object_to_file(videoName, sourceName)
示例#30
0
# Create your views here.
from django.shortcuts import render
from django.http import HttpResponse, JsonResponse
from rest_framework.views import APIView
from xinyada.models import PicInfo
import shutil, rarfile, zipfile, os, sys
import oss2
auth = oss2.Auth('LTAIDGyxdSloVIAu', 'WVOPeB83DdojWcfs3wF6X6Ry0XNZYU')
# Endpoint以杭州为例,其它Region请按实际情况填写。
bucket = oss2.Bucket(auth, 'oss-cn-shanghai-internal.aliyuncs.com',
                     'deepdraw-zip')


# Create your views here.
def get_uuid():
    import uuid
    return str(uuid.uuid1())


class indexView(APIView):
    def get(self, request, *args, **kwargs):
        return HttpResponse(content=open("./templates/xinyada.html").read())


class index_v2_View(APIView):
    def get(self, request, *args, **kwargs):
        return HttpResponse(content=open("./templates/xinyada_v1.html").read())


class analysisView(APIView):
    def post(self, request, *args, **kwargs):