本文整理汇总了Python中resources.lib.modules.control.selectDialog函数的典型用法代码示例。如果您正苦于以下问题:Python selectDialog函数的具体用法?Python selectDialog怎么用?Python selectDialog使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了selectDialog函数的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的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
开发者ID:azumimuo,项目名称:family-xbmc-addon,代码行数:30,代码来源:navigator.py
示例2: nhlResolve
def nhlResolve(url):
try:
setSettings()
try: url, selectGame, side = re.compile('(.+?)x0xe(.+?)x0xe(.+?)$').findall(url)[0]
except: selectGame, side = None, None
header = '|' + urllib.urlencode({'User-Agent': 'PS4 libhttp/1.76 (PlayStation 4)'})
base = re.compile('(.*/).+[.]m3u8').findall(url)
if not url.endswith('m3u8'):
return player().run(url + header, selectGame ,side)
result = client.request(url)
result = re.compile('BANDWIDTH=(\d*)\n(.+?[.]m3u8)').findall(result)
result = [(int(int(i[0]) / 1000), i[1]) for i in result]
result = sorted(result, reverse=True)
result = [(str(i[0]), base[0] + i[1]) for i in result]
q = [i[0] for i in result]
u = [i[1] for i in result]
select = control.selectDialog(q, control.lang(30756).encode('utf-8'))
if select == -1: return
url = u[select]
player().run(url + header, selectGame ,side)
except:
return
开发者ID:kuteteen,项目名称:repository.vietccloud,代码行数:29,代码来源:nhlcom.py
示例3: resolve
def resolve(url):
html = client.request(url)
links = re.findall('id=[\"\']([^\"\']+)[\"\']><a href=[\"\']#\d+[\"\']><div.+?>([^<]+)<',html)
if len(links)<2:
urls = re.findall('<iframe.+?src=[\'"](.+?)[\'"]',html)
import urlresolver
for url in urls:
resolved = urlresolver.resolve(url)
if resolved:
return resolved
break
else:
import requests
choices = [x[1] for x in links]
i = control.selectDialog(choices,heading='Choose a link:')
ref = url
headers = {'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8','X-Requested-With':'XMLHttpRequest','Referer':ref, 'Origin':'http://fullmatchtv.com', 'Host':'fullmatchtv.com'}
s = requests.Session()
acp_pid = re.findall("id=[\"\']acp_post[\"\'].+?value=[\"\'](\d+)[\"\']",html)[0]
post_data = {'acp_currpage' : int(i)+1,
'acp_pid' : acp_pid,
'acp_shortcode' : 'acp_shortcode',
'action' : 'pp_with_ajax'
}
result = s.post('http://fullmatchtv.com/wp-admin/admin-ajax.php', data=post_data, headers=headers).content
url = re.findall('<iframe.+?src=[\'"](.+?)[\'"]',result)[0]
import urlresolver
return urlresolver.resolve(url)
开发者ID:hieuhienvn,项目名称:hieuhien.vn,代码行数:32,代码来源:fullmatchtv.py
示例4: sch_links
def sch_links(self,key):
dicty = dict(self.sch_dict())
urls = dicty[key]
choices = []
links = re.findall('href=[\"\']([^\"\']+)[\"\'].+?>([^<]+)<',urls)
for link in links:
choices.append(link[1])
index = control.selectDialog(choices,heading='Choose the source')
if index>-1:
return links[index][0]
return ''
开发者ID:hieuhienvn,项目名称:hieuhien.vn,代码行数:12,代码来源:streamlive.py
示例5: 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
开发者ID:vphuc81,项目名称:MyRepository,代码行数:15,代码来源:streamhub.py
示例6: 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
开发者ID:kevintone,项目名称:tdbaddon,代码行数:16,代码来源:phstreams.py
示例7: manager
def manager(name, imdb, tvdb, content):
try:
user = re.sub('[^a-z0-9]', '-', control.setting('trakt.user').strip().lower())
post = {"movies": [{"ids": {"imdb": imdb}}]} if content == 'movie' else {"shows": [{"ids": {"tvdb": tvdb}}]}
items = [(control.lang(30472).encode('utf-8'), '/sync/collection')]
items += [(control.lang(30473).encode('utf-8'), '/sync/collection/remove')]
items += [(control.lang(30474).encode('utf-8'), '/sync/watchlist')]
items += [(control.lang(30475).encode('utf-8'), '/sync/watchlist/remove')]
items += [(control.lang(30476).encode('utf-8'), '/users/%s/lists/%s/items' % (user, '%s'))]
result = getTrakt('/users/%s/lists' % user)
result = json.loads(result)
lists = [(i['name'], i['ids']['slug']) for i in result]
lists = [lists[i//2] for i in range(len(lists)*2)]
for i in range(0, len(lists), 2):
lists[i] = ((control.lang(30477) + ' ' + lists[i][0]).encode('utf-8'), '/users/%s/lists/%s/items' % (user, lists[i][1]))
for i in range(1, len(lists), 2):
lists[i] = ((control.lang(30478) + ' ' + lists[i][0]).encode('utf-8'), '/users/%s/lists/%s/items/remove' % (user, lists[i][1]))
items += lists
select = control.selectDialog([i[0] for i in items], control.lang(30471).encode('utf-8'))
if select == -1:
return
elif select == 4:
t = control.lang(30476).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
new = k.getText() if k.isConfirmed() else None
if (new == None or new == ''): return
url = '/users/%s/lists' % user
result = getTrakt('/users/%s/lists' % user, post={"name": new, "privacy": "private"})
try: slug = json.loads(result)['ids']['slug']
except: return control.infoDialog('Failed', heading=name)
result = getTrakt(items[select][1] % slug, post=post)
else:
result = getTrakt(items[select][1], post=post)
info = 'Successful' if not result == None else 'Failed'
control.infoDialog(info, heading=name)
except:
return
开发者ID:sokam,项目名称:kodiprofile,代码行数:43,代码来源:trakt.py
示例8: manager
def manager(name, imdb, tvdb, content):
try:
post = {"movies": [{"ids": {"imdb": imdb}}]} if content == 'movie' else {"shows": [{"ids": {"tvdb": tvdb}}]}
items = [(control.lang(32516).encode('utf-8'), '/sync/collection')]
items += [(control.lang(32517).encode('utf-8'), '/sync/collection/remove')]
items += [(control.lang(32518).encode('utf-8'), '/sync/watchlist')]
items += [(control.lang(32519).encode('utf-8'), '/sync/watchlist/remove')]
items += [(control.lang(32520).encode('utf-8'), '/users/me/lists/%s/items')]
result = getTrakt('/users/me/lists')
result = json.loads(result)
lists = [(i['name'], i['ids']['slug']) for i in result]
lists = [lists[i//2] for i in range(len(lists)*2)]
for i in range(0, len(lists), 2):
lists[i] = ((control.lang(32521) % lists[i][0]).encode('utf-8'), '/users/me/lists/%s/items' % lists[i][1])
for i in range(1, len(lists), 2):
lists[i] = ((control.lang(32522) % lists[i][0]).encode('utf-8'), '/users/me/lists/%s/items/remove' % lists[i][1])
items += lists
select = control.selectDialog([i[0] for i in items], control.lang(32515).encode('utf-8'))
if select == -1:
return
elif select == 4:
t = control.lang(32520).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
new = k.getText() if k.isConfirmed() else None
if (new == None or new == ''): return
result = getTrakt('/users/me/lists', post={"name": new, "privacy": "private"})
try: slug = json.loads(result)['ids']['slug']
except: return control.infoDialog(control.lang(32515).encode('utf-8'), heading=str(name), sound=True, icon='ERROR')
result = getTrakt(items[select][1] % slug, post=post)
else:
result = getTrakt(items[select][1], post=post)
icon = control.infoLabel('ListItem.Icon') if not result == None else 'ERROR'
control.infoDialog(control.lang(32515).encode('utf-8'), heading=str(name), sound=True, icon=icon)
except:
return
开发者ID:azumimuo,项目名称:family-xbmc-addon,代码行数:42,代码来源:trakt.py
示例9: manager
def manager(name, imdb, tvdb, content):
try:
post = {"movies": [{"ids": {"imdb": imdb}}]} if content == 'movie' else {"shows": [{"ids": {"tvdb": tvdb}}]}
items = [("Add to [B]Collection[/B]", '/sync/collection')]
items += [("Remove from [B]Collection[/B]", '/sync/collection/remove')]
items += [("Add to [B]Watchlist[/B]", '/sync/watchlist')]
items += [("Remove from [B]Watchlist[/B]", '/sync/watchlist/remove')]
items += [("Add to [B]new List[/B]", '/users/me/lists/%s/items')]
result = getTraktAsJson('/users/me/lists')
lists = [(i['name'], i['ids']['slug']) for i in result]
lists = [lists[i//2] for i in range(len(lists)*2)]
for i in range(0, len(lists), 2):
lists[i] = (("Add to [B]%s[/B]" % lists[i][0]), '/users/me/lists/%s/items' % lists[i][1])
for i in range(1, len(lists), 2):
lists[i] = (("Remove from [B]%s[/B]" % lists[i][0]), '/users/me/lists/%s/items/remove' % lists[i][1])
items += lists
select = control.selectDialog([i[0] for i in items], "Trakt Manager")
if select == -1:
return
elif select == 4:
t = "Add to [B]new List[/B]"
k = control.keyboard('', t) ; k.doModal()
new = k.getText() if k.isConfirmed() else None
if (new == None or new == ''): return
result = __getTrakt('/users/me/lists', post={"name": new, "privacy": "private"})[0]
try: slug = utils.json_loads_as_str(result)['ids']['slug']
except: return control.infoDialog("Trakt Manager", heading=str(name), sound=True, icon='ERROR')
result = __getTrakt(items[select][1] % slug, post=post)[0]
else:
result = __getTrakt(items[select][1], post=post)[0]
icon = control.infoLabel('ListItem.Icon') if not result == None else 'ERROR'
control.infoDialog("Trakt Manager", heading=str(name), sound=True, icon=icon)
except:
return
开发者ID:varunrai,项目名称:Masterani-Redux,代码行数:41,代码来源:trakt.py
示例10: CCstream
def CCstream(url):
try:
control.idle()
url = urlparse.urljoin('http://kisscartoon.me', url)
result = cloudflare.request(url)
items = client.parseDOM(result,'select', attrs={'id':'selectQuality'})
items = client.parseDOM(items, 'option', ret='value')
url = []
for item in items:
try:
u = base64.b64decode(item)
u = u.encode('utf-8')
if u[-3:] == 'm37': q = '1080P'
elif u[-3:] == 'm22': q = '720P'
elif u[-3:] == 'm18': q = '360P'
else: q = 'UNKNOWN'
url.append({'q': q, 'u': u})
except:
pass
if len(url) > 1:
q = [i['q'] for i in url]
u = [i['u'] for i in url]
select = control.selectDialog(q)
if select == -1: return
url = u[select]
else:
url = url[0]['u']
player().run(url)
except:
return
开发者ID:azumimuo,项目名称:family-xbmc-addon,代码行数:40,代码来源:phtoons.py
示例11: sourcesDialog
def sourcesDialog(self, items, progress=True):
try:
sources = [{'label': '00 | [B]%s[/B]' % control.lang(30509).encode('utf-8').upper()}] + items
labels = [i['label'] for i in sources]
select = control.selectDialog(labels)
if select == 0: return self.sourcesDirect(items, progress=progress)
if select == -1: return 'close://'
next = [y for x,y in enumerate(items) if x >= select]
prev = [y for x,y in enumerate(items) if x < select][::-1]
items = [items[select-1]]
items = [i for i in items+next+prev][:20]
if progress == True:
self.progressDialog = control.progressDialog
self.progressDialog.create(control.addonInfo('name'), '')
self.progressDialog.update(0)
block = None
for i in range(len(items)):
try:
if progress == True:
if self.progressDialog.iscanceled(): break
self.progressDialog.update(int((100 / float(len(items))) * i), str(items[i]['label']), str(' '))
if items[i]['source'] == block: raise Exception()
w = workers.Thread(self.sourcesResolve, items[i])
w.start()
m = ''
for x in range(3600):
if progress == True:
if self.progressDialog.iscanceled(): return self.progressDialog.close()
if xbmc.abortRequested == True: return sys.exit()
k = control.condVisibility('Window.IsActive(virtualkeyboard)')
if k: m += '1'; m = m[-1]
if (w.is_alive() == False or x > 30) and not k: break
k = control.condVisibility('Window.IsActive(yesnoDialog)')
if k: m += '1'; m = m[-1]
if (w.is_alive() == False or x > 30) and not k: break
time.sleep(0.5)
for x in range(30):
if m == '': break
if progress == True:
if self.progressDialog.iscanceled(): return self.progressDialog.close()
if xbmc.abortRequested == True: return sys.exit()
if w.is_alive() == False: break
time.sleep(0.5)
if w.is_alive() == True: block = items[i]['source']
if self.url == None: raise Exception()
self.selectedSource = items[i]['label']
try: self.progressDialog.close()
except: pass
control.execute('Dialog.Close(virtualkeyboard)')
control.execute('Dialog.Close(yesnoDialog)')
return self.url
except:
pass
try: self.progressDialog.close()
except: pass
except:
try: self.progressDialog.close()
except: pass
开发者ID:jurrabi,项目名称:plugin.video.exodus,代码行数:78,代码来源:__init__.py
示例12: sourcesDialog
def sourcesDialog(self, items):
try:
labels = [i['label'] for i in items]
select = control.selectDialog(labels)
if select == -1: return 'close://'
next = [y for x,y in enumerate(items) if x >= select]
prev = [y for x,y in enumerate(items) if x < select][::-1]
items = [items[select]]
items = [i for i in items+next+prev][:20]
header = control.addonInfo('name')
header2 = header.upper()
progressDialog = control.progressDialog if control.setting('progress.dialog') == '0' else control.progressDialogBG
progressDialog.create(header, '')
progressDialog.update(0)
block = None
for i in range(len(items)):
try:
if items[i]['source'] == block: raise Exception()
w = workers.Thread(self.sourcesResolve, items[i])
w.start()
try:
if progressDialog.iscanceled(): break
progressDialog.update(int((100 / float(len(items))) * i), str(items[i]['label']), str(' '))
except:
progressDialog.update(int((100 / float(len(items))) * i), str(header2), str(items[i]['label']))
m = ''
for x in range(3600):
try:
if xbmc.abortRequested == True: return sys.exit()
if progressDialog.iscanceled(): return progressDialog.close()
except:
pass
k = control.condVisibility('Window.IsActive(virtualkeyboard)')
if k: m += '1'; m = m[-1]
if (w.is_alive() == False or x > 30) and not k: break
k = control.condVisibility('Window.IsActive(yesnoDialog)')
if k: m += '1'; m = m[-1]
if (w.is_alive() == False or x > 30) and not k: break
time.sleep(0.5)
for x in range(30):
try:
if xbmc.abortRequested == True: return sys.exit()
if progressDialog.iscanceled(): return progressDialog.close()
except:
pass
if m == '': break
if w.is_alive() == False: break
time.sleep(0.5)
if w.is_alive() == True: block = items[i]['source']
if self.url == None: raise Exception()
self.selectedSource = items[i]['label']
try: progressDialog.close()
except: pass
control.execute('Dialog.Close(virtualkeyboard)')
control.execute('Dialog.Close(yesnoDialog)')
return self.url
except:
pass
try: progressDialog.close()
except: pass
except:
try: progressDialog.close()
except: pass
开发者ID:EdLogan18,项目名称:logan-repository,代码行数:86,代码来源:__init__.py
注:本文中的resources.lib.modules.control.selectDialog函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论