本文整理汇总了Python中resources.lib.modules.control.infoLabel函数的典型用法代码示例。如果您正苦于以下问题:Python infoLabel函数的具体用法?Python infoLabel怎么用?Python infoLabel使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了infoLabel函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: play
def play(self, name, url=None, windowedtrailer=0):
try:
url = self.worker(name, url)
if not url: return
title = control.infoLabel('listitem.title')
if not title: title = control.infoLabel('listitem.label')
icon = control.infoLabel('listitem.icon')
item = control.item(path=url, iconImage=icon, thumbnailImage=icon)
try: item.setArt({'icon': icon})
except: pass
item.setInfo(type='Video', infoLabels={'title': title})
control.player.play(url, item, windowedtrailer)
if windowedtrailer == 1:
# The call to the play() method is non-blocking. So we delay further script execution to keep the script alive at this spot.
# Otherwise this script will continue and probably already be garbage collected by the time the trailer has ended.
control.sleep(1000) # Wait until playback starts. Less than 900ms is too short (on my box). Make it one second.
while control.player.isPlayingVideo():
control.sleep(1000)
# Close the dialog.
# Same behaviour as the fullscreenvideo window when :
# the media plays to the end,
# or the user pressed one of X, ESC, or Backspace keys on the keyboard/remote to stop playback.
control.execute("Dialog.Close(%s, true)" % control.getCurrentDialogId)
except:
pass
示例2: addView
def addView(content):
try:
skin = control.skin
skinPath = control.skinPath
xml = os.path.join(skinPath,'addon.xml')
file = control.openFile(xml)
read = file.read().replace('\n','')
file.close()
try: src = re.compile('defaultresolution="(.+?)"').findall(read)[0]
except: src = re.compile('<res.+?folder="(.+?)"').findall(read)[0]
src = os.path.join(skinPath, src)
src = os.path.join(src, 'MyVideoNav.xml')
file = control.openFile(src)
read = file.read().replace('\n','')
file.close()
views = re.compile('<views>(.+?)</views>').findall(read)[0]
views = [int(x) for x in views.split(',')]
for view in views:
label = control.infoLabel('Control.GetLabel(%s)' % (view))
if not (label == '' or label == None): break
record = (skin, content, str(view))
control.makeFile(control.dataPath)
dbcon = database.connect(control.viewsFile)
dbcur = dbcon.cursor()
dbcur.execute("CREATE TABLE IF NOT EXISTS views (""skin TEXT, ""view_type TEXT, ""view_id TEXT, ""UNIQUE(skin, view_type)"");")
dbcur.execute("DELETE FROM views WHERE skin = '%s' AND view_type = '%s'" % (record[0], record[1]))
dbcur.execute("INSERT INTO views Values (?, ?, ?)", record)
dbcon.commit()
viewName = control.infoLabel('Container.Viewmode')
control.infoDialog(control.lang(30491).encode('utf-8'), heading=viewName)
except:
return
示例3: search
def search(self, query=None):
try:
if control.infoLabel('Container.PluginName') == '':
return control.dialog.ok('Exodus', control.lang(30518).encode('utf-8'), '', '')
if not control.infoLabel('ListItem.Title') == '':
self.query = control.window.getProperty('%s.movie.search' % control.addonInfo('id'))
elif query == None:
t = control.lang(30201).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
self.query = k.getText() if k.isConfirmed() else None
else:
self.query = query
if (self.query == None or self.query == ''): return
control.window.setProperty('%s.movie.search' % control.addonInfo('id'), self.query)
url = self.search_link % urllib.quote_plus(self.query)
self.list = cache.get(self.trakt_list, 0, url)
self.worker()
self.movieDirectory(self.list)
return self.list
except:
return
示例4: playItem
def playItem(url, dialog=None):
try:
url = resolveUrl(url)
if url == None:
return control.infoDialog(control.lang(30705).encode('utf-8'))
meta = {}
for i in ['title', 'originaltitle', 'tvshowtitle', 'year', 'season', 'episode', 'genre', 'rating', 'votes', 'director', 'writer', 'plot', 'tagline']:
try: meta[i] = control.infoLabel('listitem.%s' % i)
except: pass
meta['title'] = cleantitle(meta['title'])
meta = dict((k,v) for k, v in meta.iteritems() if not v == '')
if not 'title' in meta: meta['title'] = cleantitle(control.infoLabel('listitem.label'))
icon = control.infoLabel('listitem.icon')
title = meta['title']
try:
if not '.f4m'in url: raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext == 'f4m': raise Exception()
from resources.lib.modules.f4mproxy.F4mProxy import f4mProxyHelper
return f4mProxyHelper().playF4mLink(url, title, None, None, '', icon)
except:
pass
item = control.item(path=url, iconImage=icon, thumbnailImage=icon)
try: item.setArt({'icon': icon})
except: pass
item.setInfo(type='Video', infoLabels = meta)
control.player.play(url, item)
except:
pass
示例5: play
def play(self, url, content=None):
try:
base = url
url = resolver().get(url)
if url == False: return
control.execute('ActivateWindow(busydialog)')
url = resolver().process(url)
control.execute('Dialog.Close(busydialog)')
if url == None: return control.infoDialog(control.lang(30705).encode('utf-8'))
if url == False: return
meta = {}
for i in ['title', 'originaltitle', 'tvshowtitle', 'year', 'season', 'episode', 'genre', 'rating', 'votes', 'director', 'writer', 'plot', 'tagline']:
try: meta[i] = control.infoLabel('listitem.%s' % i)
except: pass
meta = dict((k,v) for k, v in meta.iteritems() if not v == '')
if not 'title' in meta: meta['title'] = control.infoLabel('listitem.label')
icon = control.infoLabel('listitem.icon')
self.name = meta['title'] ; self.year = meta['year'] if 'year' in meta else '0'
self.getbookmark = True if (content == 'movies' or content == 'episodes') else False
self.offset = bookmarks().get(self.name, self.year)
if not 'tvplayer' in url:
if not 'itv' in url:
f4m = resolver().f4m(url, self.name)
if not f4m == None: return
item = control.item(path=url, iconImage=icon, thumbnailImage=icon)
try: item.setArt({'icon': icon})
except: pass
item.setInfo(type='Video', infoLabels = meta)
control.player.play(url, item)
control.resolve(int(sys.argv[1]), True, item)
self.totalTime = 0 ; self.currentTime = 0
for i in range(0, 240):
if self.isPlayingVideo(): break
control.sleep(1000)
while self.isPlayingVideo():
try:
self.totalTime = self.getTotalTime()
self.currentTime = self.getTime()
except:
pass
control.sleep(2000)
control.sleep(5000)
except:
pass
示例6: run
def run(self, url):
title = control.infoLabel('ListItem.Label')
image = control.infoLabel('ListItem.Icon')
item = control.item(path=url, iconImage=image, thumbnailImage=image)
item.setInfo(type='Video', infoLabels = {'title': title})
control.player.play(url, item)
for i in range(0, 240):
if self.isPlayingVideo(): break
control.sleep(1000)
示例7: radioResolve
def radioResolve(url):
url = radio1fmResolve(url)
title = control.infoLabel('ListItem.Label')
image = control.infoLabel('ListItem.Icon')
meta = {'title': title, 'album': title, 'artist': title, 'comment': title}
item = control.item(path=url, iconImage=image, thumbnailImage=image)
try: item.setArt({'icon': image})
except: pass
item.setInfo(type='Music', infoLabels = meta)
control.player.play(url, item)
示例8: radioResolve
def radioResolve(url):
url = radio1fmResolve(url)
url = client.request(url, output='geturl')
title = control.infoLabel('ListItem.Label')
image = control.infoLabel('ListItem.Icon')
meta = {'title': title, 'album': title, 'artist': title, 'comment': title}
item = control.item(path=url, iconImage=image, thumbnailImage=image)
item.setArt({'icon': image})
item.setInfo(type='Music', infoLabels = meta)
control.player.play(url, item)
示例9: play
def play(self, title, year, imdb, tvdb, season, episode, tvshowtitle, premiered, meta, select):
try:
sysloc = [urlparse.urlparse(sys.argv[0]).netloc, '', 'plugin.video.live.streamspro', 'plugin.video.tinklepad']
sysplg = True if control.infoLabel('Container.PluginName') in sysloc else False
syslib = False #True if '.strm' in str(control.infoLabel('ListItem.FileName')) else False
items = self.getSources(title, year, imdb, tvdb, season, episode, tvshowtitle, premiered)
select = control.setting('hosts.mode') if select == None else select
title = tvshowtitle if not tvshowtitle == None else title
url = None
if syslib == True or sysplg == False:
items = []
if control.window.getProperty('PseudoTVRunning') == 'True':
return control.resolve(int(sys.argv[1]), True, control.item(path=str(self.sourcesDirect(items))))
if len(items) > 0:
if select == '1' and 'plugin' in control.infoLabel('Container.PluginName'):
control.window.clearProperty(self.itemProperty)
control.window.setProperty(self.itemProperty, json.dumps(items))
control.window.clearProperty(self.metaProperty)
control.window.setProperty(self.metaProperty, meta)
control.sleep(200)
return control.execute('Container.Update(%s?action=addItem&title=%s)' % (sys.argv[0], urllib.quote_plus(title.encode('utf-8'))))
elif select == '0' or select == '1':
url = self.sourcesDialog(items)
else:
url = self.sourcesDirect(items)
if url == None:
return self.errorForSources()
meta = json.loads(meta)
from resources.lib.modules.player import player
player().run(title, year, season, episode, imdb, tvdb, url, meta)
except:
pass
示例10: play
def play(self, name, url=None):
try:
url = self.worker(name, url)
if url == None: return
title = control.infoLabel('listitem.title')
if title == '': title = control.infoLabel('listitem.label')
icon = control.infoLabel('listitem.icon')
item = control.item(path=url, iconImage=icon, thumbnailImage=icon)
try: item.setArt({'icon': icon})
except: pass
item.setInfo(type='Video', infoLabels = {'title': title})
control.player.play(url, item)
except:
pass
示例11: playItem
def playItem(url, dialog=None):
try:
try: dialog.close()
except: pass
meta = {}
for i in ['title', 'originaltitle', 'tvshowtitle', 'year', 'season', 'episode', 'genre', 'rating', 'votes', 'director', 'writer', 'plot', 'tagline']:
try: meta[i] = control.infoLabel('listitem.%s' % i)
except: pass
meta['title'] = cleantitle(meta['title'])
meta = dict((k,v) for k, v in meta.iteritems() if not v == '')
if not 'title' in meta: meta['title'] = cleantitle(control.infoLabel('listitem.label'))
icon = control.infoLabel('listitem.icon')
item = control.item(path=url, iconImage=icon, thumbnailImage=icon)
item.setInfo(type='Video', infoLabels = meta)
control.player.play(url, item)
except:
pass
示例12: play
def play(self, title, year, imdb, tmdb, tvdb, season, episode, tvshowtitle, premiered, meta, url):
try:
if not control.addonInfo('id').lower() == control.infoLabel('Container.PluginName').lower():
progress = True if control.setting('progress.dialog') == '1' else False
else:
control.resolve(int(sys.argv[1]), True, control.item(path=''))
control.execute('Dialog.Close(okdialog)')
progress = True
if 'super.fav' in control.infoLabel('Container.PluginName'):
return control.dialog.ok('Exodus', control.lang(30518).encode('utf-8'), '', '')
self.sources = self.getSources(title, year, imdb, tmdb, tvdb, season, episode, tvshowtitle, premiered, progress=progress)
self.sources = self.sourcesFilter()
if control.window.getProperty('PseudoTVRunning') == 'True':
return control.resolve(int(sys.argv[1]), True, control.item(path=str(self.sourcesDirect(progress=progress))))
if self.sources == []: raise Exception()
if url == 'direct://': url = self.sourcesDirect(progress=progress)
elif url == 'dialog://': url = self.sourcesDialog(progress=progress)
elif control.setting('autoplay') == 'false': url = self.sourcesDialog(progress=progress)
else: url = self.sourcesDirect(progress=progress)
if url == None: raise Exception()
if url == 'close://': return
control.sleep(200)
if not tvshowtitle == None: title = tvshowtitle
from resources.lib.modules.player import player
player().run(title, year, season, episode, imdb, tmdb, tvdb, meta, url)
return url
except:
control.infoDialog(control.lang(30501).encode('utf-8'))
示例13: get
def get(self, url):
try:
items = re.compile('<sublink(?:\s+name=|)(?:\'|\"|)(.*?)(?:\'|\"|)>(.+?)</sublink>').findall(url)
if len(items) == 0: return url
if len(items) == 1: return items[0][1]
items = [('Link %s' % (int(items.index(i))+1) if i[0] == '' else i[0], i[1]) for i in items]
select = control.selectDialog([i[0] for i in items], control.infoLabel('listitem.label'))
if select == -1: return False
else: return items[select][1]
except:
pass
示例14: addView
def addView(content):
try:
skin = control.skin
skinPath = control.kodiSkinPath
xml = os.path.join(skinPath,'addon.xml')
file = control.openFile(xml)
read = file.read().replace('\n','')
file.close()
try: src = re.compile('defaultresolution="(.+?)"').findall(read)[0]
except: src = re.compile('<res.+?folder="(.+?)"').findall(read)[0]
src = os.path.join(skinPath, src)
src = os.path.join(src, 'MyVideoNav.xml')
file = control.openFile(src)
read = file.read().replace('\n','')
file.close()
views = re.compile('<views>(.+?)</views>').findall(read)[0]
views = [int(x) for x in views.split(',')]
for view in views:
label = control.infoLabel('Control.GetLabel(%s)' % (view))
if not (label == '' or label == None): break
record = (skin, content, str(view))
control.makeFile(control.dataPath)
dbcon = database.connect(control.viewsFile)
dbcur = dbcon.cursor()
dbcur.execute("CREATE TABLE IF NOT EXISTS views (""skin TEXT, ""view_type TEXT, ""view_id TEXT, ""UNIQUE(skin, view_type)"");")
dbcur.execute("DELETE FROM views WHERE skin = '%s' AND view_type = '%s'" % (record[0], record[1]))
dbcur.execute("INSERT INTO views Values (?, ?, ?)", record)
dbcon.commit()
viewName = control.infoLabel('Container.Viewmode')
skinName = control.addon(skin).getAddonInfo('name')
skinIcon = control.addon(skin).getAddonInfo('icon')
interface.Dialog.notification(title = 33586, message = interface.Translation.string(33587) + ': ' + str(viewName), icon = interface.Dialog.IconSuccess)
except:
return
示例15: get
def get(self, url):
try:
items = re.compile('<sublink>(.+?)</sublink>').findall(url)
if len(items) == 0: items = [url]
items = [('Link %s' % (int(items.index(i))+1), i) for i in items]
if len(items) == 1:
url = items[0][1]
else:
select = control.selectDialog([i[0] for i in items], control.infoLabel('listitem.label'))
if select == -1: return False
else: url = items[select][1]
return url
except:
pass