本文整理汇总了Python中xbmcplugin.addDirectoryItem方法的典型用法代码示例。如果您正苦于以下问题:Python xbmcplugin.addDirectoryItem方法的具体用法?Python xbmcplugin.addDirectoryItem怎么用?Python xbmcplugin.addDirectoryItem使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xbmcplugin
的用法示例。
在下文中一共展示了xbmcplugin.addDirectoryItem方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: play_url
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def play_url(params):
torr_link=params['file']
img=urllib.unquote_plus(params["img"])
#showMessage('heading', torr_link, 10000)
TSplayer=tsengine()
out=TSplayer.load_torrent(torr_link,'TORRENT',port=aceport)
if out=='Ok':
for k,v in TSplayer.files.iteritems():
li = xbmcgui.ListItem(urllib.unquote(k))
uri = construct_request({
'torr_url': torr_link,
'title': k,
'ind':v,
'img':img,
'mode': 'play_url2'
})
xbmcplugin.addDirectoryItem(handle, uri, li, False)
xbmcplugin.addSortMethod(handle, xbmcplugin.SORT_METHOD_LABEL)
xbmcplugin.endOfDirectory(handle)
TSplayer.end()
示例2: add_item
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def add_item (name, mode="", path = Pdir, ind="0", cover=None, funart=None):
#print name
#print path
if path.find("720p")>0: qual="[COLOR FFA900EF][ 720p ] [/COLOR]"
elif path.find("480p")>0: qual="[COLOR FFFF0090][ 480p ] [/COLOR]"
elif path.find("400p")>0: qual="[COLOR FF70F020][ 400p ] [/COLOR]"
elif path.find("1080p")>0:qual="[COLOR FF50FF50][1080p] [/COLOR]"
else: qual="[ ???? ] "
if cover==None: listitem = xbmcgui.ListItem(qual+"[B]"+name+"[/B]")
else: listitem = xbmcgui.ListItem(qual+"[B]"+name+"[/B]", iconImage=cover)
listitem.setProperty('fanart_image', funart)
uri = sys.argv[0] + '?mode='+mode
uri += '&url=' + urllib.quote_plus(path.encode('utf-8'))
uri += '&name=' + urllib.quote_plus(xt(name))
uri += '&ind=' + urllib.quote_plus(ind)
if cover!=None:uri += '&cover=' + urllib.quote_plus(cover)
if funart!=None and funart!="":uri += '&funart=' + urllib.quote_plus(funart)
if mode=="play": fld=False
else: fld=True
xbmcplugin.addDirectoryItem(handle, uri, listitem, fld)
示例3: addLinkItem
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def addLinkItem(name, url, mode, params=1, iconimage='DefaultFolder.png', infoLabels=False, IsPlayable=True,
fanart=FANART, itemcount=1, contextmenu=None):
u = build_url({'mode': mode, 'foldername': name, 'ex_link': url, 'params': params})
liz = xbmcgui.ListItem(name)
art_keys = ['thumb', 'poster', 'banner', 'fanart', 'clearart', 'clearlogo', 'landscape', 'icon']
art = dict(zip(art_keys, [iconimage for x in art_keys]))
art['landscape'] = fanart if fanart else art['landscape']
art['fanart'] = fanart if fanart else art['landscape']
liz.setArt(art)
if not infoLabels:
infoLabels = {"title": name}
liz.setInfo(type="video", infoLabels=infoLabels)
if IsPlayable:
liz.setProperty('IsPlayable', 'true')
if contextmenu:
contextMenuItems = contextmenu
liz.addContextMenuItems(contextMenuItems, replaceItems=True)
ok = xbmcplugin.addDirectoryItem(handle=addon_handle, url=u, listitem=liz, isFolder=False, totalItems=itemcount)
xbmcplugin.addSortMethod(addon_handle, sortMethod=xbmcplugin.SORT_METHOD_NONE, label2Mask="%R, %Y, %P")
return ok
示例4: addDir
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def addDir(name, ex_link=None, params=1, mode='folder', iconImage='DefaultFolder.png', infoLabels=None, fanart=FANART,
contextmenu=None):
url = build_url({'mode': mode, 'foldername': name, 'ex_link': ex_link, 'params': params})
nofolders = ['take_stream', 'opensettings', 'enable_input', 'forceupdate', 'open_news', 'ccache', 'showalts']
folder = False if mode in nofolders else True
li = xbmcgui.ListItem(name)
if infoLabels:
li.setInfo(type="video", infoLabels=infoLabels)
li.setProperty('fanart_image', fanart)
art_keys = ['thumb', 'poster', 'banner', 'fanart', 'clearart', 'clearlogo', 'landscape', 'icon']
art = dict(zip(art_keys, [iconImage for x in art_keys]))
art['landscape'] = fanart if fanart else art['landscape']
art['fanart'] = fanart if fanart else art['landscape']
li.setArt(art)
if contextmenu:
contextMenuItems = contextmenu
li.addContextMenuItems(contextMenuItems, replaceItems=True)
xbmcplugin.addDirectoryItem(handle=addon_handle, url=url, listitem=li, isFolder=folder)
xbmcplugin.addSortMethod(addon_handle, sortMethod=xbmcplugin.SORT_METHOD_NONE, label2Mask="%R, %Y, %P")
示例5: downloads_root
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def downloads_root():
movie_downloads = control.setting('movie.download.path')
tv_downloads = control.setting('tv.download.path')
cm = [(control.lang(32007).encode('utf-8'),
'RunPlugin(plugin://plugin.video.releaseBB/?mode=settings)'),
(control.lang(32008).encode('utf-8'), 'RunPlugin(plugin://plugin.video.releaseBB/?mode=ClearCache)')]
if len(control.listDir(movie_downloads)[0]) > 0:
item = control.item(label='Movies')
item.addContextMenuItems(cm)
item.setArt({'icon': IconPath + 'movies.png', 'fanart': FANART})
xbmcplugin.addDirectoryItem(int(sys.argv[1]), movie_downloads, item, True)
if len(control.listDir(tv_downloads)[0]) > 0:
item = control.item(label='Tv Shows')
item.addContextMenuItems(cm)
item.setArt({'icon': IconPath + 'tv_shows.png', 'fanart': FANART})
xbmcplugin.addDirectoryItem(int(sys.argv[1]), tv_downloads, item, True)
control.content(int(sys.argv[1]), 'videos')
control.directory(int(sys.argv[1]))
view.setView('addons', {'skin.estuary': 55, 'skin.confluence': 500})
示例6: addDir
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def addDir(name,url,mode,iconimage,total,pasta,fan_art="%s/fanart.jpg"%settings.getAddonInfo("path"),parser=None,parserfunction=None):
if "plugin://" in sys.argv[0]: u = sys.argv[0]; sysargv = sys.argv[0]
else: u = 'plugin://plugin.video.p2p-streams/'; sysargv = 'plugin://plugin.video.p2p-streams/'
u += "?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)
try: u += "&parser="+urllib.quote_plus(parser)
except: pass
try: u += "&parserfunction="+urllib.quote_plus(parserfunction)
except: pass
contextmen = []
liz=xbmcgui.ListItem(name,iconImage="DefaultFolder.png", thumbnailImage=iconimage)
liz.setInfo( type="Video", infoLabels={ "Title": name} )
liz.setProperty('fanart_image', fan_art)
if mode == 1 or mode == 2:
fic = hashlib.md5(name + '|' + url).hexdigest() + '.txt'
if os.path.exists(os.path.join(mystrm_folder,fic)):
contextmen.append((translate(30025), 'XBMC.RunPlugin(%s?mode=13&url=%s&name=%s&iconimage=%s)' % (sysargv, urllib.quote_plus(url),name,iconimage)))
else:
contextmen.append((translate(30026), 'XBMC.RunPlugin(%s?mode=12&url=%s&name=%s&iconimage=%s)' % (sysargv,urllib.quote_plus(url),name,iconimage)))
liz.addContextMenuItems(contextmen,replaceItems=False)
return xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=pasta,totalItems=total)
示例7: addDir
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def addDir(name,url,mode,iconimage,total,pasta,fan_art="%s/fanart.jpg"%settings.getAddonInfo("path")):
if "plugin://" in sys.argv[0]: u = sys.argv[0]; sysargv = sys.argv[0]
else: u = 'plugin://program.plexus/'; sysargv = 'plugin://program.plexus/'
u += "?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)
contextmen = []
liz=xbmcgui.ListItem(name,iconImage="DefaultFolder.png", thumbnailImage=iconimage)
liz.setInfo( type="Video", infoLabels={ "Title": name} )
liz.setProperty('fanart_image', fan_art)
if mode == 1 or mode == 2:
fic = hashlib.md5(name + '|' + url).hexdigest() + '.txt'
if os.path.exists(os.path.join(mystrm_folder,fic)):
contextmen.append((translate(30025), 'XBMC.RunPlugin(%s?mode=13&url=%s&name=%s&iconimage=%s)' % (sysargv, urllib.quote_plus(url),name,iconimage)))
else:
contextmen.append((translate(30026), 'XBMC.RunPlugin(%s?mode=12&url=%s&name=%s&iconimage=%s)' % (sysargv,urllib.quote_plus(url),name,iconimage)))
liz.addContextMenuItems(contextmen,replaceItems=False)
return xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=pasta,totalItems=total)
示例8: add_item
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def add_item(queries, list_item, fanart='', is_folder=None, is_playable=None, total_items=0, menu_items=None, replace_menu=False):
if menu_items is None:
menu_items = []
if is_folder is None:
is_folder = False if is_playable else True
if is_playable is None:
playable = 'false' if is_folder else 'true'
else:
playable = 'true' if is_playable else 'false'
liz_url = get_plugin_url(queries)
if fanart:
list_item.setProperty('fanart_image', fanart)
list_item.setInfo('video', {'title': list_item.getLabel()})
list_item.setProperty('isPlayable', playable)
list_item.addContextMenuItems(menu_items, replaceItems=replace_menu)
xbmcplugin.addDirectoryItem(int(sys.argv[1]), liz_url, list_item, isFolder=is_folder, totalItems=total_items)
示例9: bookmarks
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def bookmarks():
img = plugin.routing.build_icon_path("create_bookmarks_folder")
li = plugin.list_item("Создать папку", iconImage=img, thumbnailImage=img)
url = plugin.routing.build_url("create_bookmarks_folder")
xbmcplugin.addDirectoryItem(plugin.handle, url, li, False)
response = plugin.client("bookmarks").get()
for folder in response["items"]:
img = plugin.routing.build_icon_path("bookmark")
li = plugin.list_item(
folder["title"],
iconImage=img,
thumbnailImage=img,
properties={"folder-id": str(folder["id"]), "views": str(folder["views"])},
)
url = plugin.routing.build_url("remove_bookmarks_folder", folder["id"])
li.addContextMenuItems([("Удалить", "Container.Update({})".format(url))])
url = plugin.routing.build_url("bookmarks", folder["id"])
xbmcplugin.addDirectoryItem(plugin.handle, url, li, True)
xbmcplugin.endOfDirectory(plugin.handle)
示例10: watching
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def watching():
response = plugin.client("watching/serials").get(data={"subscribed": 1})
xbmcplugin.setContent(plugin.handle, "tvshows")
for item in response["items"]:
title = u"{} : [COLOR FFFFF000]+{}[/COLOR]".format(item["title"], item["new"])
li = plugin.list_item(
title,
str(item["new"]),
poster=item["posters"]["big"],
properties={"id": str(item["id"]), "in_watchlist": "1"},
video_info={"mediatype": content_type_map[item["type"].lower()]},
addContextMenuItems=True,
)
url = plugin.routing.build_url("seasons", item["id"])
xbmcplugin.addDirectoryItem(plugin.handle, url, li, True)
xbmcplugin.endOfDirectory(plugin.handle, cacheToDisc=False)
示例11: collections
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def collections():
img = plugin.routing.build_icon_path("fresh")
li = plugin.list_item("Последние", iconImage=img, thumbnailImage=img)
url = plugin.routing.build_url("collections", "created")
xbmcplugin.addDirectoryItem(plugin.handle, url, li, True)
img = plugin.routing.build_icon_path("hot")
li = plugin.list_item("Просматриваемые", iconImage=img, thumbnailImage=img)
url = plugin.routing.build_url("collections", "watchers")
xbmcplugin.addDirectoryItem(plugin.handle, url, li, True)
img = plugin.routing.build_icon_path("popular")
li = plugin.list_item("Популярные", iconImage=img, thumbnailImage=img)
url = plugin.routing.build_url("collections", "views")
xbmcplugin.addDirectoryItem(plugin.handle, url, li, True)
xbmcplugin.endOfDirectory(plugin.handle)
示例12: add_next_button
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def add_next_button(self, listtotal):
# adds a next button if needed
params = self.params
if listtotal > self.offset + self.limit:
params["offset"] = self.offset + self.limit
url = "plugin://plugin.audio.spotify/"
for key, value in params.iteritems():
if key == "action":
url += "?%s=%s" % (key, value[0])
elif key == "offset":
url += "&%s=%s" % (key, value)
else:
url += "&%s=%s" % (key, value[0])
li = xbmcgui.ListItem(
xbmc.getLocalizedString(33078),
path=url,
iconImage="DefaultMusicAlbums.png"
)
li.setProperty('do_not_analyze', 'true')
li.setProperty('IsPlayable', 'false')
xbmcplugin.addDirectoryItem(handle=self.addon_handle, url=url, listitem=li, isFolder=True)
示例13: addDirLink
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def addDirLink(title, url, mode, page=0, icon="DefaultFolder.png", inbookmarks=False):
sys_url = sys.argv[0] + '?title=' + urllib.quote_plus(title) + '&url=' + urllib.quote_plus(url) + \
'&mode=' + urllib.quote_plus(str(mode)) + '&page=' + urllib.quote_plus(str(page))
id = url.split('/')
item = xbmcgui.ListItem(title, iconImage=icon, thumbnailImage='')
item.setIconImage(siteUrl+'/posters/'+id[1]+'.jpg')
contextMenuItems = []
if inbookmarks:
contextMenuItems.append(('Удалить из закладок', 'XBMC.RunScript(%s,%i,%s)' %
(context_path, 1, 'mode=remove_bookmark&url='+id[1])))
else:
contextMenuItems.append(('Добавить в закладки', 'XBMC.RunScript(%s,%i,%s)' %
(context_path, 1, 'mode=add_bookmark&url='+id[1])))
item.addContextMenuItems(contextMenuItems, replaceItems=True)
xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]), url=sys_url, listitem=item, isFolder=False)
示例14: show
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def show(self, link, image, name):
response = common.fetchPage({"link": link})
cid = link.split(self.url + "/")[-1].split("-")[0]
playlist = self.getPlaylist(response['content'])
if playlist:
description = self.strip(response['content'].split("<!--dle_image_end-->")[1].split("<div")[0])
currname = ''
duration = ''
#description = common.parseDOM(response['content'], "meta", attrs={"name": "description"}, ret = "content")[0]
if (self.use_epg == "true"):
currname, duration, listItems = self.getEPG(cid = cid, cname=name, image=image)
uri = sys.argv[0] + '?mode=play&url=%s&url2=%s' % (urllib.quote_plus(playlist), link)
item = xbmcgui.ListItem("[COLOR=FF7B68EE]%s[/COLOR]" % self.language(1004), iconImage=image, thumbnailImage=image)
item.setInfo(type='Video', infoLabels={'title': currname if currname != '' else name, 'plot': description, 'duration': duration})
item.setProperty('IsPlayable', 'true')
xbmcplugin.addDirectoryItem(self.handle, uri, item, False)
if (self.use_epg == "true"):
xbmcplugin.addDirectoryItems(self.handle, listItems)
xbmcplugin.setContent(self.handle, 'files')
xbmcplugin.endOfDirectory(self.handle, True)
示例15: getCategories
# 需要导入模块: import xbmcplugin [as 别名]
# 或者: from xbmcplugin import addDirectoryItem [as 别名]
def getCategories(url):
result = common.fetchPage({"link": url})
if result["status"] == 200:
content = common.parseDOM(result["content"], "div", attrs = { "class":"mcont" })
categories = common.parseDOM(content, "a", ret="href")
descriptions = common.parseDOM(content, "a")
for i in range(0, len(categories)):
uri = sys.argv[0] + '?url=' + BASE_URL + categories[i]
title = unescape(descriptions[i], 'cp1251')
item = xbmcgui.ListItem(title)
xbmcplugin.addDirectoryItem(pluginhandle, uri, item, True)
xbmcplugin.setContent(pluginhandle, 'files')
xbmcplugin.endOfDirectory(pluginhandle, True)