# -*- coding: utf-8 -*-
import sys
import oss2
import time
import traceback
PREFIX = 'http://'
class find_oss_file():
def __init__(self):
pass
# ossinfo { # ossinfo ={ACCESS_KEY_ID,ACCESS_KEY_SECRET,ENDPOINT,BUCKETNAME_XLS}
# timerange 時間毫秒值
# urlload 文件目錄
def findfile(self, ossinfo,timerange,urlload):
result = {}
urlDict = {}
sourceURL = ''
sourceTime = ''
try:
auth = oss2.Auth(ossinfo['ACCESS_KEY_ID'], ossinfo['ACCESS_KEY_SECRET'])
bucket = oss2.Bucket(auth, ossinfo['ENDPOINT_OUT'], ossinfo['BUCKETNAME_XLS'])
for filename in oss2.ObjectIterator(bucket, prefix='%s/'%urlload):
# sourcefile = filename.key.split('/')[1]
sourceURL = PREFIX + ossinfo['BUCKETNAME_XLS'] + '.' + ossinfo['ENDPOINT_OUT'] +'/'+ filename.key
sourceTime = filename.last_modified
if sourceTime in urlDict.keys():
# 時間重複
pass
urlDict[sourceTime] = sourceURL
newnow = time.time() - timerange
items = urlDict.items()
items.sort()
gt200 = {key: value for key, value in items if key > newnow}
result['fileurl'] = gt200.values()
result['errorcode'] = 0
return result
except Exception, ex:
result['errorcode'] = -1
result['errortext'] = '%s_%s:%s' % (traceback.print_exc(), Exception, ex)
return result
python oss上獲取指定bucket,指定時間範圍內文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.