MCPcopy Create free account
hub / github.com/UndCover/PyramidStore / listFiles

Method listFiles

plugin/py_ali_subtitle.py:380–422  ·  view source on GitHub ↗
(self,map,shareId,shareToken,fileId,subtitle={})

Source from the content-addressed store, hash-verified

378 return newShareToken
379
380 def listFiles(self,map,shareId,shareToken,fileId,subtitle={}):
381 url = 'https://api.aliyundrive.com/adrive/v3/file/list'
382 newHeader = self.header.copy()
383 newHeader['x-share-token'] = shareToken
384 params = {
385 'image_thumbnail_process':'image/resize,w_160/format,jpeg',
386 'image_url_process':'image/resize,w_1920/format,jpeg',
387 'limit':200,
388 'order_by':'updated_at',
389 'order_direction':'DESC',
390 'parent_file_id':fileId,
391 'share_id':shareId,
392 'video_thumbnail_process':'video/snapshot,t_1000,f_jpg,ar_auto,w_300'
393 }
394 maker = ''
395 arrayList = []
396 for i in range(1,51):
397 if i >= 2 and len(maker) == 0:
398 break
399 params['marker'] = maker
400 rsp = requests.post(url,json = params,headers=newHeader)
401 jo = json.loads(rsp.text)
402 ja = jo['items']
403 for jt in ja:
404 if jt['type'] == 'folder':
405 arrayList.append(jt['file_id'])
406 else:
407 if 'video' in jt['mime_type'] or 'video' in jt['category']:
408 repStr = jt['name'].replace("#", "_").replace("$", "_").replace(jt['file_extension'],'')[0:-1]
409 map[repStr] = shareId + "+" + shareToken + "+" + jt['file_id'] + "+" + jt['category'] + "+"
410 elif 'others' == jt['category'] and ('srt' == jt['file_extension'] or 'ass' == jt['file_extension']):
411 repStr = jt['name'].replace("#", "_").replace("$", "_").replace(jt['file_extension'],'')[0:-1]
412 subtitle[repStr] = jt['file_id']
413 maker = jo['next_marker']
414 i = i + 1
415
416 for item in arrayList:
417 self.listFiles(map,shareId,shareToken,item,subtitle)
418 for key in map.keys():
419 for subKey in subtitle.keys():
420 if key in subKey and map[key][-1] == "+":
421 map[key]=map[key]+subtitle[subKey]
422 break
423
424 def login(self):
425 self.localTime = int(time.time())

Callers 1

detailContentMethod · 0.95

Calls 1

postMethod · 0.45

Tested by

no test coverage detected