本文整理汇总了Python中resources.lib.modules.control.directory函数的典型用法代码示例。如果您正苦于以下问题:Python directory函数的具体用法?Python directory怎么用?Python directory使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了directory函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: views
def views(self):
try:
control.idle()
items = [ (control.lang(32001).encode('utf-8'), 'movies'), (control.lang(32002).encode('utf-8'), 'tvshows'), (control.lang(32054).encode('utf-8'), 'seasons'), (control.lang(32038).encode('utf-8'), 'episodes') ]
select = control.selectDialog([i[0] for i in items], control.lang(32049).encode('utf-8'))
if select == -1: return
content = items[select][1]
title = control.lang(32059).encode('utf-8')
url = '%s?action=addView&content=%s' % (sys.argv[0], content)
poster, banner, fanart = control.addonPoster(), control.addonBanner(), control.addonFanart()
item = control.item(label=title)
item.setInfo(type='Video', infoLabels = {'title': title})
item.setArt({'icon': poster, 'thumb': poster, 'poster': poster, 'banner': banner})
item.setProperty('Fanart_Image', fanart)
control.addItem(handle=int(sys.argv[1]), url=url, listitem=item, isFolder=False)
control.content(int(sys.argv[1]), content)
control.directory(int(sys.argv[1]), cacheToDisc=True)
from resources.lib.modules import cache
views.setView(content, {})
except:
return
示例2: addDirectory
def addDirectory(self, items):
if items == None or len(items) == 0: return
sysaddon = sys.argv[0]
addonFanart, addonThumb, artPath = control.addonFanart(), control.addonThumb(), control.artPath()
for i in items:
try:
try: name = control.lang(i['name']).encode('utf-8')
except: name = i['name']
if i['image'].startswith('http://'): thumb = i['image']
elif not artPath == None: thumb = os.path.join(artPath, i['image'])
else: thumb = addonThumb
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % urllib.quote_plus(i['url'])
except: pass
cm = []
item = control.item(label=name, iconImage=thumb, thumbnailImage=thumb)
item.addContextMenuItems(cm, replaceItems=False)
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
control.addItem(handle=int(sys.argv[1]), url=url, listitem=item, isFolder=True)
except:
pass
control.directory(int(sys.argv[1]), cacheToDisc=True)
示例3: addDirectory
def addDirectory(self, items, queue=False):
if items == None or len(items) == 0: return
sysaddon = sys.argv[0]
isPlayable = False if control.setting('autoplay') == 'false' and control.setting('hosts.mode') == '1' else True
addonFanart, addonThumb, artPath = control.addonFanart(), control.addonThumb(), control.artPath()
for i in items:
try:
try: name = control.lang(i['name']).encode('utf-8')
except: name = i['name']
if i['image'].startswith('http://'): thumb = i['image']
elif not artPath == None: thumb = os.path.join(artPath, i['image'])
else: thumb = addonThumb
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % urllib.quote_plus(i['url'])
except: pass
cm = []
if queue == True and isPlayable == True:
cm.append((control.lang(30202).encode('utf-8'), 'RunPlugin(%s?action=queueItem)' % sysaddon))
item = control.item(label=name, iconImage=thumb, thumbnailImage=thumb)
item.addContextMenuItems(cm, replaceItems=False)
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
control.addItem(handle=int(sys.argv[1]), url=url, listitem=item, isFolder=True)
except:
pass
control.directory(int(sys.argv[1]), cacheToDisc=True)
示例4: listBollywood
def listBollywood(self, url, page):
try: html = client.request(url + 'page/' + str(page))
except: pass
syshandle = int(sys.argv[1])
result = client.parseDOM(html, 'article', attrs={'id': 'posts'})
result = [(client.parseDOM(i, 'a', ret='href'), client.parseDOM(i, 'img', ret='src'), client.parseDOM(i, 'a')) for i in result]
result = [(i[0][0], i[1][0], i[2][1]) for i in result if len(i[0]) > 0 and len(i[1]) > 0 and len(i[2][1]) > 0]
for movie in result:
uri = movie[0]
image = movie[1]
name = movie[2]
action = 'resolveBollywoodUrl'
query = '%s?action=%s&name=%s&url=%s&image=%s' % (sysaddon, action, name, uri, image)
item = control.item(name, iconImage=image, thumbnailImage=image)
item.setInfo(type="Video", infoLabels={"Title": name, "OriginalTitle": name})
control.addItem(handle=int(sys.argv[1]), url=query, listitem=item, isFolder=True)
pageNum = int(page)+1
query = '%s?action=%s&url=%s&page=%s' % (sysaddon, 'listBollywood', url, pageNum)
item = control.item('Next page', iconImage='', thumbnailImage='')
item.setInfo(type="Video", infoLabels={"Title": 'Page ' + str(page), "OriginalTitle": 'Page ' + str(page)})
control.addItem(handle=syshandle, url=query, listitem=item, isFolder=True)
control.content(syshandle, 'movies')
control.directory(syshandle, cacheToDisc=True)
views.setView('movies', {'skin.estuary': 500, 'skin.confluence': 500})
示例5: channelDirectory
def channelDirectory(self, items):
if items == None or len(items) == 0: return
playbackMenu = control.lang(30292).encode('utf-8') if control.setting('autoplay') == 'true' else control.lang(30291).encode('utf-8')
addonPoster, addonBanner = control.addonPoster(), control.addonBanner()
addonFanart = control.addonFanart()
sysaddon = sys.argv[0]
for i in items:
try:
label = '[B]%s[/B] : %s (%s)' % (i['channel'].upper(), i['title'], i['year'])
sysname = urllib.quote_plus('%s (%s)' % (i['title'], i['year']))
systitle = urllib.quote_plus(i['title'])
imdb, year = i['imdb'], i['year']
poster, banner = i['poster'], i['poster']
if poster == '0': poster = addonPoster
if banner == '0' and poster == '0': banner = addonBanner
elif banner == '0': banner = poster
meta = dict((k,v) for k, v in i.iteritems() if not v == '0')
meta.update({'trailer': '%s?action=trailer&name=%s' % (sysaddon, sysname)})
if i['duration'] == '0': meta.update({'duration': '120'})
try: meta.update({'duration': str(int(meta['duration']) * 60)})
except: pass
sysmeta = urllib.quote_plus(json.dumps(meta))
url = '%s?action=play&title=%s&year=%s&imdb=%s&meta=%s&t=%s' % (sysaddon, systitle, year, imdb, sysmeta, self.systime)
sysurl = urllib.quote_plus(url)
cm = []
cm.append((playbackMenu, 'RunPlugin(%s?action=alterSources&url=%s&meta=%s)' % (sysaddon, sysurl, sysmeta)))
cm.append((control.lang(30297).encode('utf-8'), 'RunPlugin(%s?action=trailer&name=%s)' % (sysaddon, sysname)))
cm.append((control.lang(30293).encode('utf-8'), 'Action(Info)'))
cm.append((control.lang(30294).encode('utf-8'), 'RunPlugin(%s?action=refresh)' % (sysaddon)))
cm.append((control.lang(30295).encode('utf-8'), 'RunPlugin(%s?action=openSettings)' % (sysaddon)))
cm.append((control.lang(30296).encode('utf-8'), 'RunPlugin(%s?action=openPlaylist)' % (sysaddon)))
item = control.item(label=label, iconImage=poster, thumbnailImage=poster)
try: item.setArt({'poster': poster, 'banner': banner})
except: pass
if not addonFanart == None:
item.setProperty('Fanart_Image', addonFanart)
item.setInfo(type='Video', infoLabels = meta)
item.setProperty('Video', 'true')
#item.setProperty('IsPlayable', 'true')
item.addContextMenuItems(cm, replaceItems=True)
control.addItem(handle=int(sys.argv[1]), url=url, listitem=item, isFolder=False)
except:
pass
control.content(int(sys.argv[1]), 'movies')
#control.do_block_check(False)
control.directory(int(sys.argv[1]), cacheToDisc=True)
示例6: endDirectory
def endDirectory(content, close):
if content in ['movies', 'tvshows', 'seasons', 'episodes']:
control.content(int(sys.argv[1]), content)
if close == True: control.directory(int(sys.argv[1]), cacheToDisc=True)
if close == True and content in ['movies', 'tvshows', 'seasons', 'episodes']:
views.setView(content)
示例7: addDirectory
def addDirectory(self, items, queue=False):
if items == None or len(items) == 0: control.idle() ; sys.exit()
sysaddon = sys.argv[0]
syshandle = int(sys.argv[1])
addonFanart, addonThumb, artPath = control.addonFanart(), control.addonThumb(), control.artPath()
queueMenu = control.lang(32065).encode('utf-8')
playRandom = control.lang(32535).encode('utf-8')
addToLibrary = control.lang(32551).encode('utf-8')
for i in items:
try:
name = i['name']
if i['image'].startswith('http'): thumb = i['image']
elif not artPath == None: thumb = os.path.join(artPath, i['image'])
else: thumb = addonThumb
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % urllib.quote_plus(i['url'])
except: pass
cm = []
cm.append(('Settings', 'RunPlugin(%s?action=openSettings&query=0.0)' % sysaddon))
cm.append((playRandom, 'RunPlugin(%s?action=random&rtype=movie&url=%s)' % (sysaddon, urllib.quote_plus(i['url']))))
if queue == True:
cm.append((queueMenu, 'RunPlugin(%s?action=queueItem)' % sysaddon))
try: cm.append((addToLibrary, 'RunPlugin(%s?action=moviesToLibrary&url=%s)' % (sysaddon, urllib.quote_plus(i['context']))))
except: pass
item = control.item(label=name)
item.setArt({'icon': thumb, 'thumb': thumb})
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
item.addContextMenuItems(cm)
control.addItem(handle=syshandle, url=url, listitem=item, isFolder=True)
except:
pass
control.content(syshandle, 'addons')
control.directory(syshandle, cacheToDisc=True)
示例8: getSearch
def getSearch():
addDirectoryItem('%s...' % control.lang(30702).encode('utf-8'), '0', 'searchDirectory', '0', '0', '0', '0', '0', {})
addDirectoryItem(control.lang(30703).encode('utf-8'), '0', 'clearSearch', '0', '0', '0', '0', '0', {})
try:
def search(): return
result = cache.get(search, 600000000, table='rel_srch')
for q in result:
try: addDirectoryItem('%s...' % q, q, 'searchDirectory2', '0', '0', '0', '0', '0', {})
except: pass
except:
pass
control.directory(int(sys.argv[1]), cacheToDisc=True)
示例9: listEpisodes
def listEpisodes(self, catid, showid, page, image):
syshandle = int(sys.argv[1])
url = self.episodes_link % (showid, page)
cookie = 'ssMemberID=%d' % (self.member_id)
try: result = client.request(url, cookie=cookie)
except: pass
link = ''.join(result.splitlines()).replace('\'','"')
link = ''.join(link.splitlines()).replace('<i class="fa fa-play-circle-white"></i>','')
episodematch = re.compile('class="chapterList">(.+?)</li>').findall(link)
for em in episodematch:
episodes = re.compile('player-(.+)">(.+)</a>').findall(em)
for episode in episodes:
name = episode[1].decode('utf-8')
url = self.player_link % (episode[0])
self.list.append({'name': name, 'url': urllib.quote_plus(url), 'image': image})
for episode in self.list:
name = episode['name'].encode('utf-8')
url = episode['url']
image = episode['image']
action = 'sourcePage'
query = '?action=%s&image=%s&url=%s&name=%s' % (action, image, url, urllib.quote_plus(name))
url = '%s%s' % (sysaddon, query)
item = control.item(name, iconImage=image, thumbnailImage=image)
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
item.setInfo(type="Video", infoLabels={"Title": name, "OriginalTitle": name})
control.addItem(handle=int(sys.argv[1]), url=url, listitem=item, isFolder=False)
# Pagination
# paginator = re.compile('<div class="page_list" align="center">(.+?)</ul>').findall(link)[0]
# pages = re.compile('>(\d+)</a>').findall(paginator)
# nextPage = int(page) + 1
# if nextPage < len(pages):
# action = 'listEpisodes'
# query = '?action=%s&page=%d&name=%s&catid=%s&showid=%s&image=%s' % (action, nextPage, 'Next Page', catid, showid, image)
# url = '%s%s' % (sysaddon, query)
# item = control.item('Next Page', iconImage=image, thumbnailImage=image)
# if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
# item.setInfo(type="Video", infoLabels={"Title": 'Next Page', "OriginalTitle": 'Next Page'})
# control.addItem(handle=syshandle, url=url, listitem=item, isFolder=True)
control.content(syshandle, 'episodes')
control.directory(syshandle, cacheToDisc=True)
views.setView('episodes', {'skin.estuary': 55, 'skin.confluence': 50})
示例10: addDirectory
def addDirectory(self, items, queue=False, isFolder=True):
if items == None or len(items) == 0: control.idle() ; sys.exit()
sysaddon = sys.argv[0]
syshandle = int(sys.argv[1])
addonFanart, addonThumb, artPath = control.addonFanart(), control.addonThumb(), control.artPath()
queueMenu = control.lang(32065).encode('utf-8')
playRandom = control.lang(32535).encode('utf-8')
addToLibrary = control.lang(32551).encode('utf-8')
for i in items:
try:
name = i['name']
if i['image'].startswith('http'): thumb = i['image']
elif not artPath == None: thumb = os.path.join(artPath, i['image'])
else: thumb = addonThumb
item = control.item(label=name)
if isFolder:
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % urllib.quote_plus(i['url'])
except: pass
item.setProperty('IsPlayable', 'false')
else:
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % i['url']
except: pass
item.setProperty('IsPlayable', 'true')
item.setInfo("mediatype", "video")
item.setInfo("audio", '')
item.setArt({'icon': thumb, 'thumb': thumb})
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
control.addItem(handle=syshandle, url=url, listitem=item, isFolder=isFolder)
except:
pass
control.content(syshandle, 'addons')
control.directory(syshandle, cacheToDisc=True)
示例11: add_directory
def add_directory(items):
if items is None or len(items) == 0: return
sysaddon = sys.argv[0]
addon_poster = addon_banner = control.addonInfo('icon')
addon_fanart = control.addonInfo('fanart')
for i in items:
item = control.item(i['name'])
url = '%s?action=%s' % (sysaddon, i['action'])
item.setArt({'poster': addon_poster, 'banner': addon_banner})
item.setProperty('Fanart_Image', addon_fanart)
control.addItem(handle=int(sys.argv[1]), url=url, listitem=item, isFolder=True)
control.directory(int(sys.argv[1]), cacheToDisc=True)
control.content(int(sys.argv[1]), 'files')
示例12: downloader
def downloader():
thumb = control.addonThumb() ; fanart = control.addonFanart()
status = control.window.getProperty(property + '.status')
if not downloadPath == '':
item = control.item('[COLOR FF00b8ff]Downloads[/COLOR]', iconImage=thumb, thumbnailImage=thumb)
item.addContextMenuItems([], replaceItems=True)
item.setProperty('fanart_image', fanart)
control.addItem(handle=int(sys.argv[1]), url=downloadPath, listitem=item, isFolder=True)
if status == 'downloading':
item = control.item('[COLOR red]Stop Downloads[/COLOR]', iconImage=thumb, thumbnailImage=thumb)
item.addContextMenuItems([], replaceItems=True)
item.setProperty('fanart_image', fanart)
control.addItem(handle=int(sys.argv[1]), url=sys.argv[0]+'?action=stopDownload', listitem=item, isFolder=True)
else:
item = control.item('[COLOR FF00b8ff]Start Downloads[/COLOR]', iconImage=thumb, thumbnailImage=thumb)
item.addContextMenuItems([], replaceItems=True)
item.setProperty('fanart_image', fanart)
control.addItem(handle=int(sys.argv[1]), url=sys.argv[0]+'?action=startDownload', listitem=item, isFolder=True)
if status == 'downloading':
item = control.item('[COLOR gold]Download Status[/COLOR]', iconImage=thumb, thumbnailImage=thumb)
item.addContextMenuItems([], replaceItems=True)
item.setProperty('Fanart_Image', fanart)
control.addItem(handle=int(sys.argv[1]), url=sys.argv[0]+'?action=statusDownload', listitem=item, isFolder=True)
def download(): return []
result = cache.neptune_download_get(download, 600000000, table='rel_dl')
for i in result:
try:
cm = []
cm.append(('Remove from Queue', 'RunPlugin(%s?action=removeDownload&url=%s)' % (sys.argv[0], urllib.quote_plus(i['url']))))
item = control.item(i['name'], iconImage=i['image'], thumbnailImage=i['image'])
item.addContextMenuItems(cm, replaceItems=True)
item.setProperty('fanart_image', fanart)
item.setProperty('Video', 'true')
item.setProperty('IsPlayable', 'true')
control.addItem(handle=int(sys.argv[1]), url=i['url'], listitem=item)
except:
pass
control.directory(int(sys.argv[1]), cacheToDisc=True)
示例13: addDirectory
def addDirectory(self, items, queue=False):
if items == None or len(items) == 0: control.idle() ; sys.exit()
sysaddon = sys.argv[0]
syshandle = int(sys.argv[1])
addonFanart = control.addonFanart()
addonThumb = control.addonThumb()
queueMenu = control.lang(32065).encode('utf-8')
for i in items:
try:
name = i['name']
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % urllib.quote_plus(i['url'])
except: pass
cm = []
if queue == True:
cm.append((queueMenu, 'RunPlugin(%s?action=queueItem)' % sysaddon))
item = control.item(label=name)
if i['image'].startswith('http'):
iconIcon = iconThumb = iconPoster = iconBanner = i['image']
else:
iconIcon, iconThumb, iconPoster, iconBanner = interface.Icon.pathAll(icon = i['image'], default = addonThumb)
item.setArt({'icon': iconIcon, 'thumb': iconThumb, 'poster': iconPoster, 'banner': iconBanner})
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
item.addContextMenuItems(cm)
control.addItem(handle=syshandle, url=url, listitem=item, isFolder=True)
except:
pass
control.content(syshandle, 'addons')
control.directory(syshandle, cacheToDisc=True)
interface.traktApi()
示例14: addDirectory
def addDirectory(self, items, queue=False):
if items == None or len(items) == 0: control.idle() ; sys.exit()
sysaddon = sys.argv[0]
syshandle = int(sys.argv[1])
addonFanart, addonThumb, artPath = control.addonFanart(), control.addonThumb(), control.artPath()
queueMenu = control.lang(32065).encode('utf-8')
for i in items:
try:
name = i['name']
if i['image'].startswith('http://'): thumb = i['image']
elif not artPath == None: thumb = os.path.join(artPath, i['image'])
else: thumb = addonThumb
url = '%s?action=%s' % (sysaddon, i['action'])
try: url += '&url=%s' % urllib.quote_plus(i['url'])
except: pass
cm = []
if queue == True:
cm.append((queueMenu, 'RunPlugin(%s?action=queueItem)' % sysaddon))
item = control.item(label=name)
item.setArt({'icon': thumb, 'thumb': thumb})
if not addonFanart == None: item.setProperty('Fanart_Image', addonFanart)
item.addContextMenuItems(cm)
control.addItem(handle=syshandle, url=url, listitem=item, isFolder=True)
except:
pass
#control.do_block_check(False)
control.directory(syshandle, cacheToDisc=True)
示例15: list
def list(self, url):
html = client.request(url)
data = json.loads(html)
sortedData = sorted(data['items'], key=lambda d: int(d['episode']), reverse=True)
for item in sortedData:
url = self.embedUri % (item['id'])
if 'retina_image' in item['images']:
icon = item['images']['retina_image']
else:
icon = item['images']['nonretina_image']
if 'synopsis' in item:
info = item['synopsis']
else:
info = 'N/A'
self.addDir(item['seriesTitle'], info, url, 'playDutchShow', icon, False)
control.content(syshandle, 'episodes')
control.directory(syshandle, cacheToDisc=True)
views.setView('episodes', {'skin.estuary': 55, 'skin.confluence': 50})