You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.3 KiB
39 lines
1.3 KiB
import oss2, sys, os |
|
|
|
def down_obj_fromoss(pid): |
|
# 根据前缀获取文件列表 |
|
prefix = f'objs/print/{pid}/' |
|
filelist = oss2.ObjectIteratorV2(oss_client, prefix=prefix) |
|
for file in filelist: |
|
filename = file.key.split('/')[-1] |
|
if filename.endswith('.obj'): obj_filename = filename |
|
print('正在下载:', file.key) |
|
localfile = os.path.join(workdir, 'print', pid, filename) |
|
oss_client.get_object_to_file(file.key, localfile) |
|
print('下载完成') |
|
return obj_filename |
|
|
|
def main(pid): |
|
if not os.path.exists(os.path.join(workdir, 'print')): |
|
os.mkdir(os.path.join(workdir, 'print')) |
|
path = os.path.join(workdir, 'print', pid) |
|
if not os.path.exists(path): |
|
os.mkdir(path) |
|
obj_filename = down_obj_fromoss(pid) |
|
print('obj文件名:', obj_filename) |
|
else: |
|
print('已经下载过了') |
|
|
|
if __name__ == '__main__': |
|
AccessKeyId = 'LTAI5tSReWm8hz7dSYxxth8f' |
|
AccessKeySecret = '8ywTDF9upPAtvgXtLKALY2iMYHIxdS' |
|
Endpoint = 'oss-cn-shanghai.aliyuncs.com' |
|
Bucket = 'suwa3d-securedata' |
|
oss_client = oss2.Bucket(oss2.Auth(AccessKeyId, AccessKeySecret), Endpoint, Bucket) |
|
|
|
if len(sys.argv) != 2: |
|
print('Usage: python3 gen_glb.py <pid>') |
|
sys.exit(1) |
|
pid = sys.argv[1] |
|
workdir = f'z:\\' |
|
main(pid) |