Python xbmcplugin.addSortMethod() Examples
The following are 30
code examples of xbmcplugin.addSortMethod().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
xbmcplugin
, or try the search function
.
Example #1
Source File: xbmcUtils.py From filmkodi with Apache License 2.0 | 6 votes |
def setSortMethodsForCurrentXBMCList(handle, sortKeys): def addSortMethod(method): xbmcplugin.addSortMethod(handle = handle, sortMethod = method) if not sortKeys or sortKeys==[]: addSortMethod(xbmcplugin.SORT_METHOD_UNSORTED) else: if 'name' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_LABEL) if 'size' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_SIZE) if 'duration' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_DURATION) if 'genre' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_GENRE) if 'rating' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_VIDEO_RATING) if 'date' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_DATE) if 'file' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_FILE)
Example #2
Source File: plugin_content.py From plugin.audio.spotify with GNU General Public License v3.0 | 6 votes |
def browse_topartists(self): xbmcplugin.setContent(self.addon_handle, "artists") result = self.sp.current_user_top_artists(limit=20, offset=0) cachestr = "spotify.topartists.%s" % self.userid checksum = self.cache_checksum(result["total"]) items = self.cache.get(cachestr, checksum=checksum) if not items: count = len(result["items"]) while result["total"] > count: result["items"] += self.sp.current_user_top_artists(limit=20, offset=count)["items"] count += 50 items = self.prepare_artist_listitems(result["items"]) self.cache.set(cachestr, items, checksum=checksum) self.add_artist_listitems(items) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.endOfDirectory(handle=self.addon_handle) if self.defaultview_artists: xbmc.executebuiltin('Container.SetViewMode(%s)' % self.defaultview_artists)
Example #3
Source File: main.py From bugatsinho.github.io with GNU General Public License v3.0 | 6 votes |
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")
Example #4
Source File: main.py From bugatsinho.github.io with GNU General Public License v3.0 | 6 votes |
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
Example #5
Source File: plugin_content.py From plugin.audio.spotify with GNU General Public License v3.0 | 6 votes |
def browse_album(self): xbmcplugin.setContent(self.addon_handle, "songs") album = self.sp.album(self.albumid, market=self.usercountry) xbmcplugin.setProperty(self.addon_handle, 'FolderName', album["name"]) tracks = self.get_album_tracks(album) if album.get("album_type") == "compilation": self.add_track_listitems(tracks, True) else: self.add_track_listitems(tracks) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_TRACKNUM) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_TITLE) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_VIDEO_YEAR) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_SONG_RATING) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_ARTIST) xbmcplugin.endOfDirectory(handle=self.addon_handle) if self.defaultview_songs: xbmc.executebuiltin('Container.SetViewMode(%s)' % self.defaultview_songs)
Example #6
Source File: plugin_content.py From plugin.audio.spotify with GNU General Public License v3.0 | 6 votes |
def browse_toptracks(self): xbmcplugin.setContent(self.addon_handle, "songs") results = self.sp.current_user_top_tracks(limit=20, offset=0) cachestr = "spotify.toptracks.%s" % self.userid checksum = self.cache_checksum(results["total"]) items = self.cache.get(cachestr, checksum=checksum) if not items: items = results["items"] while results["next"]: results = self.sp.next(results) items.extend(results["items"]) items = self.prepare_track_listitems(tracks=items) self.cache.set(cachestr, items, checksum=checksum) self.add_track_listitems(items, True) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.endOfDirectory(handle=self.addon_handle) if self.defaultview_songs: xbmc.executebuiltin('Container.SetViewMode(%s)' % self.defaultview_songs)
Example #7
Source File: mystreams.py From program.plexus with GNU General Public License v2.0 | 6 votes |
def my_streams_menu(): if not os.path.exists(mystrm_folder): xbmcvfs.mkdir(mystrm_folder) files = os.listdir(mystrm_folder) if files: for fic in files: content = readfile(os.path.join(mystrm_folder,fic)).split('|') if content: if 'acestream://' in content[1] or '.acelive' in content[1] or '.torrent' in content[1]: addDir(content[0],content[1],1,content[2],1,False) elif 'sop://' in content[1]: addDir(content[0],content[1],2,content[2],1,False) else: pass xbmcplugin.addSortMethod(int(sys.argv[1]), xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.addSortMethod(int(sys.argv[1]), xbmcplugin.SORT_METHOD_LABEL) addDir('[B][COLOR maroon]'+translate(30009)+'[/COLOR][/B]',MainURL,11,os.path.join(addonpath,art,'plus-menu.png'),1,False)
Example #8
Source File: default.py From tdw with GNU General Public License v3.0 | 6 votes |
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()
Example #9
Source File: xbmcUtils.py From filmkodi with Apache License 2.0 | 6 votes |
def setSortMethodsForCurrentXBMCList(handle, sortKeys): def addSortMethod(method): xbmcplugin.addSortMethod(handle = handle, sortMethod = method) if not sortKeys or sortKeys==[]: addSortMethod(xbmcplugin.SORT_METHOD_UNSORTED) else: if 'name' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_LABEL) if 'size' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_SIZE) if 'duration' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_DURATION) if 'genre' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_GENRE) if 'rating' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_VIDEO_RATING) if 'date' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_DATE) if 'file' in sortKeys: addSortMethod(xbmcplugin.SORT_METHOD_FILE)
Example #10
Source File: plugin_content.py From plugin.audio.spotify with GNU General Public License v3.0 | 6 votes |
def search_tracks(self): xbmcplugin.setContent(self.addon_handle, "songs") xbmcplugin.setProperty(self.addon_handle, 'FolderName', xbmc.getLocalizedString(134)) result = self.sp.search( q="track:%s" % self.trackid, type='track', limit=self.limit, offset=self.offset, market=self.usercountry) tracks = self.prepare_track_listitems(tracks=result["tracks"]["items"]) self.add_track_listitems(tracks, True) self.add_next_button(result['tracks']['total']) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.endOfDirectory(handle=self.addon_handle) if self.defaultview_songs: xbmc.executebuiltin('Container.SetViewMode(%s)' % self.defaultview_songs)
Example #11
Source File: plugin_content.py From plugin.audio.spotify with GNU General Public License v3.0 | 6 votes |
def search_albums(self): xbmcplugin.setContent(self.addon_handle, "albums") xbmcplugin.setProperty(self.addon_handle, 'FolderName', xbmc.getLocalizedString(132)) result = self.sp.search( q="album:%s" % self.albumid, type='album', limit=self.limit, offset=self.offset, market=self.usercountry) albumids = [] for album in result['albums']['items']: albumids.append(album["id"]) albums = self.prepare_album_listitems(albumids) self.add_album_listitems(albums, True) self.add_next_button(result['albums']['total']) xbmcplugin.addSortMethod(self.addon_handle, xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.endOfDirectory(handle=self.addon_handle) if self.defaultview_albums: xbmc.executebuiltin('Container.SetViewMode(%s)' % self.defaultview_albums)
Example #12
Source File: default.py From ru with GNU General Public License v2.0 | 6 votes |
def mainScreen(params): link='http://manga24.ru/all/' http = GET(link) if http == None: return False beautifulSoup = BeautifulSoup(http) content = beautifulSoup.find('select', attrs={'id': 'manga_list'}) cats=content.findAll('option') for manga in cats: try: manga.prettify() title=manga.string path=str(manga).split('"')[1] listitem=xbmcgui.ListItem(title,addon_icon,addon_icon) listitem.setProperty('IsPlayable', 'false') listitem.setLabel(title) uri = construct_request({ 'func': 'get_manga', 'm_path':path }) xbmcplugin.addDirectoryItem(hos, uri, listitem, True) except: pass #xbmcplugin.addSortMethod(hos, xbmcplugin.SORT_METHOD_LABEL) #xbmcplugin.addSortMethod(hos, xbmcplugin.SORT_METHOD_TITLE) xbmcplugin.endOfDirectory(handle=hos, succeeded=True, updateListing=False, cacheToDisc=True)
Example #13
Source File: channelselector.py From tvalacarta with GNU General Public License v3.0 | 6 votes |
def channeltypes(params,url,category): logger.info("channelselector.channeltypes") lista = getchanneltypes() for item in lista: addfolder(item.title,item.channel,item.action,category=item.category,thumbnailname=item.thumbnail) if config.get_platform()=="kodi-krypton" or config.get_platform()=="kodi-leia": import plugintools plugintools.set_view( plugintools.TV_SHOWS ) # Label (top-right)... import xbmcplugin xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category="" ) xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True ) if config.get_setting("forceview")=="true": # Confluence - Thumbnail import xbmc xbmc.executebuiltin("Container.SetViewMode(500)")
Example #14
Source File: channelselector.py From tvalacarta with GNU General Public License v3.0 | 6 votes |
def listchannels(params,url,category): logger.info("channelselector.listchannels") lista = filterchannels(category) for channel in lista: if config.is_xbmc() and (channel.type=="xbmc" or channel.type=="generic"): addfolder(channel.title , channel.channel , "mainlist" , channel.channel) elif config.get_platform()=="boxee" and channel.extra!="rtmp": addfolder(channel.title , channel.channel , "mainlist" , channel.channel) if config.get_platform()=="kodi-krypton" or config.get_platform()=="kodi-leia": import plugintools plugintools.set_view( plugintools.TV_SHOWS ) # Label (top-right)... import xbmcplugin xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category=category ) xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True ) if config.get_setting("forceview")=="true": # Confluence - Thumbnail import xbmc xbmc.executebuiltin("Container.SetViewMode(500)")
Example #15
Source File: torr2xbmc.py From ru with GNU General Public License v2.0 | 6 votes |
def play_file(params): #получаем содержимое файла в base64 f = open(params['file'].decode('utf-8'), 'rb') buf=f.read() f.close torr_link=base64.b64encode(buf) xbmcplugin.addSortMethod(int(sys.argv[1]), xbmcplugin.SORT_METHOD_LABEL) TSplayer=tsengine() out=TSplayer.load_torrent(torr_link,'RAW',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':None, 'func': 'play_it' }) xbmcplugin.addDirectoryItem(hos, uri, li, False) xbmcplugin.endOfDirectory(hos) TSplayer.end()
Example #16
Source File: container.py From plugin.video.themoviedb.helper with GNU General Public License v3.0 | 6 votes |
def finish_container(self): if self.params.get('random'): return for k, v in self.params.items(): if not k or not v: continue try: xbmcplugin.setProperty(self.handle, u'Param.{}'.format(k), u'{}'.format(v)) # Set params to container properties except Exception as exc: utils.kodi_log(u'Error: {}\nUnable to set Param.{} to {}'.format(exc, k, v), 1) if self.item_dbtype in ['movie', 'tvshow', 'episode']: xbmcplugin.addSortMethod(self.handle, xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.addSortMethod(self.handle, xbmcplugin.SORT_METHOD_EPISODE) if self.item_dbtype == 'episode' else None xbmcplugin.addSortMethod(self.handle, xbmcplugin.SORT_METHOD_TITLE_IGNORE_THE) xbmcplugin.addSortMethod(self.handle, xbmcplugin.SORT_METHOD_LASTPLAYED) xbmcplugin.addSortMethod(self.handle, xbmcplugin.SORT_METHOD_PLAYCOUNT) xbmcplugin.endOfDirectory(self.handle, updateListing=self.updatelisting)
Example #17
Source File: filmui.py From plugin.video.mediathekview with MIT License | 6 votes |
def begin(self, showshows, showchannels): """ Begin a directory containing films Args: showshows(bool): if `True` the showname is prefixed to the film name showchannels(bool): if `True` the channel name is suffixed to the film name """ self.showshows = showshows self.showchannels = showchannels # xbmcplugin.setContent( self.handle, 'tvshows' ) for method in self.sortmethods: xbmcplugin.addSortMethod(self.handle, method)
Example #18
Source File: addon.py From xbmc-addons-chinese with GNU General Public License v2.0 | 6 votes |
def list_categories(): f = urllib2.urlopen('http://www.zhanqi.tv/api/static/game.lists/100-1.json?rand={ts}'.format(ts=time.time())) obj = json.loads(f.read()) listing=[] for game in obj['data']['games']: list_item = xbmcgui.ListItem(label=game['name'], thumbnailImage=game['bpic']) list_item.setProperty('fanart_image', game['bpic']) url='{0}?action=room_list&game_id={1}'.format(_url, game['id']) #xbmc.log(url, 1) is_folder=True listing.append((url, list_item, is_folder)) xbmcplugin.addDirectoryItems(_handle,listing,len(listing)) #xbmcplugin.addSortMethod(_handle, xbmcplugin.SORT_METHOD_LABEL_IGNORE_THE) # Finish creating a virtual folder. xbmcplugin.endOfDirectory(_handle)
Example #19
Source File: addon.py From xbmc-addons-chinese with GNU General Public License v2.0 | 6 votes |
def list_categories(article): html = get(_meijumao + article ) soup = BeautifulSoup(html,"html5lib") listing = [] for urls in soup.find_all("a",attrs={"data-remote":"true"}): list_item = xbmcgui.ListItem(label=urls.div.get_text()) url='{0}?action=list_sections§ion={1}'.format(_url, urls.get("href").replace(_meijumao,"")) is_folder=True listing.append((url, list_item, is_folder)) xbmcplugin.addDirectoryItems(_handle,listing,len(listing)) #xbmcplugin.addSortMethod(_handle, xbmcplugin.SORT_METHOD_LABEL_IGNORE_THE) # Finish creating a virtual folder. xbmcplugin.endOfDirectory(_handle) # get sections
Example #20
Source File: addon.py From xbmc-addons-chinese with GNU General Public License v2.0 | 6 votes |
def room_list(game_id): if game_id == 'ALL': apiurl = 'http://api.m.panda.tv/ajax_live_lists' params = 'pageno=1&pagenum=100&status=2&order=person_num&sproom=1&__version=2.0.1.1481&__plat=android&banner=1' else: apiurl = "http://api.m.panda.tv/ajax_get_live_list_by_cate" params = "__plat=iOS&__version=1.0.5.1098&cate={ename}&order=person_num&pageno=1&pagenum=100&status=2".format(ename=game_id) returndata = post(apiurl, params); obj = json.loads(returndata) listing=[] for room in obj['data']['items']: title = TITLE_PATTERN.format(topic=room['name'].encode('utf-8'), author=room['userinfo']['nickName'].encode('utf-8'), view_count=room['person_num'].encode('utf-8')) list_item = xbmcgui.ListItem(label=title, thumbnailImage=room['pictures']['img']) list_item.setProperty('fanart_image', room['pictures']['img']) url='{0}?action=play&room_id={1}'.format(_url, room['id']) is_folder=False listing.append((url, list_item, is_folder)) xbmcplugin.addDirectoryItems(_handle, listing, len(listing)) #xbmcplugin.addSortMethod(_handle, xbmcplugin.SORT_METHOD_LABEL_IGNORE_THE) # Finish creating a virtual folder. xbmcplugin.endOfDirectory(_handle)
Example #21
Source File: addon.py From plugin.git.browser with GNU General Public License v3.0 | 5 votes |
def set_view(view_id, content=None): if content is not None: xbmcplugin.setContent(HANDLE_ID, content) xbmc.executebuiltin("Container.SetViewMode(%s)" % view_id) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_UNSORTED ) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_LABEL ) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_VIDEO_RATING ) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_DATE ) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_PROGRAM_COUNT ) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_VIDEO_RUNTIME ) xbmcplugin.addSortMethod( handle=HANDLE_ID, sortMethod=xbmcplugin.SORT_METHOD_GENRE )
Example #22
Source File: torr2xbmc.py From ru with GNU General Public License v2.0 | 5 votes |
def start_torr(params): xbmcplugin.setContent(int(sys.argv[1]), 'movies') TSplayer=TSengine() out=TSplayer.load_torrent(params['file'],'TORRENT') if out=='Ok': for k,v in TSplayer.files.iteritems(): if TSplayer.files.__len__() == 1: p=urllib.unquote_plus(params['title1']) else: p=urllib.unquote_plus(k) li = xbmcgui.ListItem(urllib.unquote(k), urllib.unquote(k), params['img'], params['img']) #if __addon__.getSetting('fanart') == 'false': li.setProperty('fanart_image', params['img']) li.setInfo(type = "Video", infoLabels = {'year': params['year'], 'genre': params['genre'], 'plot': params['descr'], 'director': params['director'], 'writer': params['writer'], 'rating': params['rating']}) #li = xbmcgui.ListItem(urllib.unquote(k)) li.setProperty('IsPlayable', 'true') #li.addContextMenuItems([('Добавить в плейлист', 'XBMC.RunPlugin(%s)' % uri),]) uri = construct_request({ 'torr_url': urllib.quote(params['file']), 'title': k, 'title1': p, 'ind':v, 'img':params['img'], 'func': 'play_url2' }) #li.addContextMenuItems([('Добавить в плейлист', 'XBMC.RunPlugin(%s?func=addplist&torr_url=%s&title=%s&ind=%s&img=%s&func=play_url2)' % (sys.argv[0],urllib.quote(torr_link),k,v,img )),]) xbmcplugin.addDirectoryItem(hos, uri, li) xbmcplugin.addSortMethod(hos, xbmcplugin.SORT_METHOD_LABEL) xbmcplugin.endOfDirectory(hos) xbmc.executebuiltin('Container.SetViewMode(%s)' % view_mode) TSplayer.end()
Example #23
Source File: addon.py From script.module.clouddrive.common with GNU General Public License v3.0 | 5 votes |
def __init__(self): self._addon = KodiUtils.get_addon() self._addonid = self._addon.getAddonInfo('id') self._addon_name = self._addon.getAddonInfo('name') self._addon_url = sys.argv[0] self._addon_version = self._addon.getAddonInfo('version') self._common_addon_id = 'script.module.clouddrive.common' self._common_addon = KodiUtils.get_addon(self._common_addon_id) self._common_addon_version = self._common_addon.getAddonInfo('version') self._dialog = xbmcgui.Dialog() self._profile_path = Utils.unicode(KodiUtils.translate_path(self._addon.getAddonInfo('profile'))) self._progress_dialog = DialogProgress(self._addon_name) self._progress_dialog_bg = DialogProgressBG(self._addon_name) self._export_progress_dialog_bg = DialogProgressBG(self._addon_name) self._system_monitor = KodiUtils.get_system_monitor() self._account_manager = AccountManager(self._profile_path) self._pin_dialog = None self.iskrypton = KodiUtils.get_home_property('iskrypton') == 'true' if len(sys.argv) > 1: self._addon_handle = int(sys.argv[1]) self._addon_params = urlparse.parse_qs(sys.argv[2][1:]) for param in self._addon_params: self._addon_params[param] = self._addon_params.get(param)[0] self._content_type = Utils.get_safe_value(self._addon_params, 'content_type') if not self._content_type: wid = xbmcgui.getCurrentWindowId() if wid == 10005 or wid == 10500 or wid == 10501 or wid == 10502: self._content_type = 'audio' elif wid == 10002: self._content_type = 'image' else: self._content_type = 'video' xbmcplugin.addSortMethod(handle=self._addon_handle, sortMethod=xbmcplugin.SORT_METHOD_LABEL) xbmcplugin.addSortMethod(handle=self._addon_handle, sortMethod=xbmcplugin.SORT_METHOD_UNSORTED ) xbmcplugin.addSortMethod(handle=self._addon_handle, sortMethod=xbmcplugin.SORT_METHOD_SIZE ) xbmcplugin.addSortMethod(handle=self._addon_handle, sortMethod=xbmcplugin.SORT_METHOD_DATE ) xbmcplugin.addSortMethod(handle=self._addon_handle, sortMethod=xbmcplugin.SORT_METHOD_DURATION )
Example #24
Source File: ipwww_radio.py From plugin.video.iplayerwww with GNU General Public License v2.0 | 5 votes |
def ListGenres(): """List programmes based on alphabetical order. Only creates the corresponding directories for each character. """ genres = [] html = OpenURL('http://www.bbc.co.uk/radio/programmes/genres') mains = html.split('<div class="category__box island--vertical">') for main in mains: current_main_match = re.search(r'<a.+?class="gel-double-pica-bold".+?href="(.+?)">(.+?)</a>',main) if current_main_match: genres.append((current_main_match.group(1), current_main_match.group(2), True)) current_sub_match = re.findall(r'<a.+?class="gel-long-primer-bold".+?href="(.+?)">(.+?)</a>',main) for sub_match_url, sub_match_name in current_sub_match: genres.append((sub_match_url, current_main_match.group(2)+' - '+sub_match_name, False)) for url, name, group in genres: new_url = 'http://www.bbc.co.uk%s' % url if group: AddMenuEntry("[B]%s[/B]" % name, new_url, 137, '', '', '') else: AddMenuEntry("%s" % name, new_url, 137, '', '', '') #BUG: this should sort by original order but it doesn't (see http://trac.kodi.tv/ticket/10252) xbmcplugin.addSortMethod(int(sys.argv[1]), xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.addSortMethod(int(sys.argv[1]), xbmcplugin.SORT_METHOD_VIDEO_TITLE)
Example #25
Source File: addon.py From xbmc-addons-chinese with GNU General Public License v2.0 | 5 votes |
def list_videos(category,offset=0): #request=urllib2.Request('http://www.douyu.com'+category,headers=headers) #f=urllib2.urlopen(request) #f=urllib2.urlopen('http://www.douyu.com'+category) #r=f.read() #rr=BeautifulSoup(r) rr=BeautifulSoup(requests.get('http://www.douyu.com'+category,headers=headers).text) videol=rr.findAll('a',{'class':'play-list-link'},limit=offset+PAGE_LIMIT+1) listing=[] #with open('rooml.dat','w') as f: # f.writelines([str(x) for x in videol]) if offset+PAGE_LIMIT<len(videol): videol=videol[offset:offset+PAGE_LIMIT] nextpageflag=True else: videol=videol[offset:] nextpageflag=False for x in videol: roomid=x['href'][1:] img=x.img['data-original'] title=x['title'] nickname=x.find('span',{'class':'dy-name ellipsis fl'}).text view=x.find('span',{'class':'dy-num fr'}).text liveinfo=u'{0}:{1}:{2}'.format(nickname,title,view) list_item=xbmcgui.ListItem(label=liveinfo,thumbnailImage=img) #list_item.setProperty('fanart_image',img) url='{0}?action=play&video={1}'.format(_url,roomid) is_folder=False listing.append((url,list_item,is_folder)) if nextpageflag==True: list_item=xbmcgui.ListItem(label=NEXT_PAGE) url='{0}?action=listing&category={1}&offset={2}'.format(_url,category,offset+PAGE_LIMIT) is_folder=True listing.append((url,list_item,is_folder)) xbmcplugin.addDirectoryItems(_handle,listing,len(listing)) #xbmcplugin.addSortMethod(_handle, xbmcplugin.SORT_METHOD_LABEL_IGNORE_THE) # Finish creating a virtual folder. xbmcplugin.endOfDirectory(_handle)
Example #26
Source File: KodiHelper.py From plugin.video.netflix with MIT License | 5 votes |
def build_search_result_folder(self, build_url, term, widget_display=False): """Add search result folder Parameters ---------- build_url : :obj:`fn` Function to build the subsequent routes term : :obj:`str` Search term Returns ------- :obj:`str` Search result folder URL """ # add search result as subfolder li_rec = xbmcgui.ListItem( label='({})'.format(term)) li_rec.setArt( {'fanart_image' : self.default_fanart, 'icon' : self.default_fanart}) url_rec = build_url({'action': 'search_result', 'term': term}) xbmcplugin.addDirectoryItem( handle=self.plugin_handle, url=url_rec, listitem=li_rec, isFolder=True) xbmcplugin.addSortMethod( handle=self.plugin_handle, sortMethod=xbmcplugin.SORT_METHOD_UNSORTED) xbmcplugin.setContent( handle=self.plugin_handle, content=CONTENT_FOLDER) xbmcplugin.endOfDirectory(self.plugin_handle) if not widget_display: self.set_custom_view(VIEW_FOLDER) return url_rec
Example #27
Source File: addon.py From xbmc-addons-chinese with GNU General Public License v2.0 | 5 votes |
def list_categories(offset): #f=urllib2.urlopen('http://www.douyutv.com/directory') #rr=BeautifulSoup(f.read()) rr=BeautifulSoup(requests.get('http://www.douyutv.com/directory',headers=headers).text) catel=rr.findAll('a',{'class':'thumb'},limit=offset+PAGE_LIMIT+1) rrr=[(x['href'], x.p.text,x.img['data-original']) for x in catel] offset=int(offset) if offset+PAGE_LIMIT<len(rrr): rrr=rrr[offset:offset+PAGE_LIMIT] nextpageflag=True else: rrr=rrr[offset:] nextpageflag=False listing=[] for classname,textinfo,img in rrr: list_item=xbmcgui.ListItem(label=textinfo,thumbnailImage=img) #list_item.setProperty('fanart_image',img) url=u'{0}?action=listing&category={1}&offset=0'.format(_url,classname) is_folder=True listing.append((url,list_item,is_folder)) if nextpageflag==True: list_item=xbmcgui.ListItem(label=NEXT_PAGE) url=u'{0}?offset={1}'.format(_url,str(offset+PAGE_LIMIT)) is_folder=True listing.append((url,list_item,is_folder)) xbmcplugin.addDirectoryItems(_handle,listing,len(listing)) #xbmcplugin.addSortMethod(_handle, xbmcplugin.SORT_METHOD_LABEL_IGNORE_THE) # Finish creating a virtual folder. xbmcplugin.endOfDirectory(_handle)
Example #28
Source File: default.py From xbmc-addons-chinese with GNU General Public License v2.0 | 5 votes |
def menu_main(id,category=''): text = read_xml(id,1) root = ElementTree.fromstring(text) elemroot = root.iter('Gen') j = 0 for elem in elemroot: name = elem.attrib['name'] if re.search(ListOmit, name.encode('utf-8')): continue id = elem.attrib['id'] se = elem.attrib['enableSearch'] if se=="1": catType = elem.attrib['search'][:-1].encode('utf-8') #change unicode to str else: catType = "" orderID = int(elem.attrib['orderid'][:5]) #xbmc cannot sort >10000 j += 1 li=xbmcgui.ListItem('[COLOR FF00FF00][ ' + name + ' ][/COLOR]') li.setInfo( type="Video", infoLabels={"Title":name, "Episode":orderID}) u=sys.argv[0]+"?mode=gen&name="+urllib.quote_plus(name.encode('utf-8'))+"&id="+id+"&category="+urllib.quote_plus(catType) xbmcplugin.addDirectoryItem(int(sys.argv[1]),u,li,True) #添加一个“PPS搜索” li = xbmcgui.ListItem('[COLOR FFFF00FF]PPS.TV 网络电视[/COLOR][COLOR FFFFFF00] (主页) [/COLOR][COLOR FF00FFFF]共计:'+str(j)+'[/COLOR]【[COLOR FF00FF00]点此输入搜索内容[/COLOR]】') li.setInfo(type="Video", infoLabels={"Title":name, "Episode":1}) u=sys.argv[0]+"?mode=search&name="+urllib.quote_plus('PPS搜索') xbmcplugin.addDirectoryItem(int(sys.argv[1]),u,li,True) xbmcplugin.addSortMethod(int(sys.argv[1]), xbmcplugin.SORT_METHOD_EPISODE) ################################################################################## # 次目录 ##################################################################################
Example #29
Source File: common.py From plugin.video.ustvvod with GNU General Public License v2.0 | 5 votes |
def set_view(type = 'root'): confluence_views = [500,501,50,503,504,508,51] if type == 'root': xbmcplugin.setContent(pluginHandle, 'movies') elif type == 'seasons': xbmcplugin.setContent(pluginHandle, 'movies') else: if type == 'tvshows': xbmcplugin.addSortMethod(pluginHandle, xbmcplugin.SORT_METHOD_LABEL) xbmcplugin.setContent(pluginHandle, type) if addon.getSetting('viewenable') == 'true': view = int(addon.getSetting(type + 'view')) xbmc.executebuiltin('Container.SetViewMode(' + str(confluence_views[view]) + ')')
Example #30
Source File: main.py From plugin.video.areena with GNU General Public License v2.0 | 5 votes |
def show_credentials_needed_menu(): listing = [] missing_credentials_list_item = xbmcgui.ListItem(label=get_translation(32038)) missing_credentials_url = '{0}'.format(_url) listing.append((missing_credentials_url, missing_credentials_list_item, True)) open_settings_list_item = xbmcgui.ListItem(label=get_translation(32039)) open_settings_url = '{0}?action=settings'.format(_url) listing.append((open_settings_url, open_settings_list_item, True)) # Add our listing to Kodi. xbmcplugin.addDirectoryItems(_handle, listing, len(listing)) # Add a sort method for the virtual folder items (alphabetically, ignore articles) xbmcplugin.addSortMethod(_handle, xbmcplugin.SORT_METHOD_NONE) # Finish creating a virtual folder. xbmcplugin.endOfDirectory(_handle)