コード例 #1
0
ファイル: watchseries.py プロジェクト: TerrorKeed/gitupdate1
def POPULARWATCHS(murl):
    main.GA("Watchseries", "PopularShows")
    link = main.OPENURL2(murl)
    link = link.replace('\r',
                        '').replace('\n',
                                    '').replace('\t',
                                                '').replace(' ', '')

    match = re.compile('href="([^"]+)" title=".+?">([^<]+)</a><br />').findall(
        link)
    main.addLink('[COLOR red]Most Popular Series[/COLOR]', '',
                 art + '/link.png')
    for url, name in match[0:12]:
        main.addDirT(name, 'http://watchseries.ag' + url, 578, '', '', '', '',
                     '', '')
    main.addLink('[COLOR red]Most Popular Cartoons[/COLOR]', '',
                 art + '/link.png')
    for url, name in match[12:24]:
        main.addDirT(name, 'http://watchseries.ag' + url, 578, '', '', '', '',
                     '', '')
    main.addLink('[COLOR red]Most Popular Documentaries[/COLOR]', '',
                 art + '/link.png')
    for url, name in match[24:36]:
        main.addDirT(name, 'http://watchseries.ag' + url, 578, '', '', '', '',
                     '', '')
    main.addLink('[COLOR red]Most Popular Shows[/COLOR]', '',
                 art + '/link.png')
    for url, name in match[36:48]:
        main.addDirT(name, 'http://watchseries.ag' + url, 578, '', '', '', '',
                     '', '')
    main.addLink('[COLOR red]Most Popular Sports[/COLOR]', '',
                 art + '/link.png')
    for url, name in match[48:60]:
        main.addDirT(name, 'http://watchseries.ag' + url, 578, '', '', '', '',
                     '', '')
コード例 #2
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def TV_TOP10(url):
    html = main.OPENURL2(url)
    if html == None:
        return
    r = re.findall('Top 10 TV Episodes</h1>(.+?)&laquo;More TV Shows&raquo;', html, re.M|re.DOTALL)
    pattern  = '<a target="_blank" title="Watch online: (.+?)".+?href="/(.+?)"><img'
    r = re.findall(r''+pattern+'', str(r), re.M|re.DOTALL)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    
    for tname, url in r:
        r = re.findall(r'\d+/(.+?)/season_(\d+)/episode_(\d+)/', url)
        for name, season, episode in r:
            name = name.replace('_', ' ')
            name = name.strip()+' Season '+season.strip()+' Episode '+episode.strip()+' ('+season.strip()+'x'+episode.strip()+')'
        if ':' in name:
            name = re.findall('(.+?)\:', name)[0]
            name = name.strip()+' Season '+season.strip()+' Episode '+episode.strip()+' ('+season.strip()+'x'+episode.strip()+')'
        main.addDirTE(name.replace('.',''),url,1026,'','','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
コード例 #3
0
ファイル: dpstreaming.py プロジェクト: noba3/KoTos
def LINKLIST(mname, url):
    link = main.OPENURL2(url)
    link = link.replace('<iframe src="http://ads.affbuzzads.com', '')
    link = main.unescapes(link)
    if selfAddon.getSetting("hide-download-instructions") != "true":
        main.addLink(
            "[COLOR red]For Download Options, Bring up Context Menu Over Selected Link.[/COLOR]",
            '', '')
    match = re.compile('<iframe src="(.+?)" frameborder',
                       re.DOTALL).findall(link)
    for url in match:
        hostn = re.compile("http://(.+?)/.+?").findall(url)
        for hname in hostn:
            host = hname.replace('www.', '').replace('embed.', '').replace(
                '.es', '').replace('.in', '').replace('.sx', '').replace(
                    '.net', '').replace('.com', '').replace('.to', '').replace(
                        '.org', '').replace('.ch',
                                            '').replace('.eu',
                                                        '').replace('.ES', '')
            host = host.split('.')[0]
        if main.supportedHost(host):
            mname = main.removeColoredText(mname)
            main.addDown2(mname + ' [COLOR blue]' + host.upper() + ' [/COLOR]',
                          url, 314, art + '/hosts/' + host.lower() + ".png",
                          art + '/hosts/' + host.lower() + ".png")
コード例 #4
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def LAST_AIRED(url):
    html = main.OPENURL2(url)
    html = html.decode('ISO-8859-1').encode('utf-8', 'ignore')
    if html == None:
        return
    r = re.findall(r'Last Aired TV Shows/Episodes</div>(.+?)&laquo;Browse all latest TV Episodes&raquo;',html, re.M|re.DOTALL)[0]
    pattern = 'href="/(player.+?)">'
    r = re.findall(r''+pattern+'', r, re.M|re.DOTALL)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for url in r:
        r = re.findall(r'player/\d+/(.+?)/season_(\d+)/episode_(\d+)/.+?/',url)#.replace('_', ' ')
        for name, season, episode in r:
            name = name.replace('_', ' ')
            name = name.strip()+' Season '+season.strip()+' Episode '+episode.strip()+' ('+season.strip()+'x'+episode.strip()+')'
        if ':' in name:
            name = re.findall('(.+?)\:', name)[0]
            name = name.strip()+' Season '+season.strip()+' Episode '+episode.strip()+' ('+season.strip()+'x'+episode.strip()+')'
        main.addDirTE(name.replace('.',''),url,1026,'','','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
コード例 #5
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def LATEST_TV(url):
    html = main.OPENURL2(url)
    html = html.replace('&rsquo;',"'")
    if html == None:
        return
    pattern  = '<a target="_blank" title="Watch online: (.+?)"'#name
    pattern += '.+?href="/(player/.+?)"><img.+?'#url
    r = re.findall(r''+pattern+'',html, re.I|re.M|re.DOTALL)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for name, url in r:
        r = re.findall(r'(.+?) - Season: (\d+) Episode: (\d+)  -', name)
        for  name, season, episode in r:
            name = name.strip()+' Season '+season.strip()+' Episode '+episode.strip()+' ('+season.strip()+'x'+episode.strip()+')'
        if ':' in name:
            name = re.findall('(.+?)\:', name)[0]
            name = name.strip()+' Season '+season.strip()+' Episode '+episode.strip()+' ('+season.strip()+'x'+episode.strip()+')'
        main.addDirTE(name.replace('.',''),url,1026,'','','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
コード例 #6
0
def LISTFULLS(murl):
        link=main.OPENURL2(murl)
        link=link.replace('\r','').replace('\n','').replace('\t','').replace('&nbsp;','')
        match=re.compile('full-stream-view-hover"><img src="(.+?)" alt="(.+?)".+?<h2><a href="(.+?)">.+?</a></h2>',re.DOTALL).findall(link)
        dialogWait = xbmcgui.DialogProgress()
        ret = dialogWait.create('Please wait until Movie list is cached.')
        totalLinks = len(match)
        loadedLinks = 0
        remaining_display = 'Movies loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
        for thumb,name,url in match:
                name=name.replace("<span style='color: #ff0000'>",'').replace('</span>','')
                if '/series-tv/' in murl or 'saison' in url:
                    main.addDirT(name,url,790,thumb,'','','','','')
                else:
                    main.addDirM(name,url,788,thumb,'','','','','')
                loadedLinks = loadedLinks + 1
                percent = (loadedLinks * 100)/totalLinks
                remaining_display = 'Movies loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
                dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
                if (dialogWait.iscanceled()):
                        return False   
        dialogWait.close()
        del dialogWait
        paginate = re.compile('''<div class="navigation".+? <span.+? <a href="(.+?)">''').findall(link)
        #xbmc.log(msg='-------------------'+str(match)+str(len(paginate)), level=xbmc.LOGDEBUG)
        if len(paginate)>0:
                main.addDir('Next',paginate[0],787,art+'/next2.png')
                
        main.GA("Fullstream","List")
コード例 #7
0
ファイル: tubeplus.py プロジェクト: noba3/KoTos
def EPISODES(mname,url,linkback):
    html = main.OPENURL2(url)
    r = re.compile(r'parts" id="'+linkback+'"><a name=(.+?)<div id="parts_header">',re.M|re.DOTALL).findall(html)
    match = re.compile('href=/(.+?'+linkback+'.+?)">(.+?)</a>').findall(str(r))
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(match)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    season = re.search('Seas(on)?\.? (\d+)',mname,re.I)
    for url, episode in match:
        episode = main.unescapes(episode)
        episode = episode.replace('\\','').replace('xc2x92','')
        name = mname
        epi= re.search('Ep(isode)?\.? (\d+)(.*)',episode, re.I)
        if(epi):
            e = str(epi.group(2))
            if(len(e)==1): e = "0" + e
            if(season):
                s = season.group(2)
                if(len(s)==1): s = "0" + s
                name = re.sub(' ?Seas(on)?\.? (\d+)','',name,re.I)
                name = name + " " + "S" + s + "E" + e
                episode = epi.group(3).strip(" -")
        main.addDirTE(name+' '+"[COLOR red]" + episode + '[/COLOR]',url,1026,'','','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
コード例 #8
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def INDEXtv(url):
    html = main.OPENURL2(url)
    if html == None:
        return
    pattern = 'title="Watch online: ([^"]*)" href="/([^"]*)"><img border="0" alt=".+?" src="([^"]*)"></a>'
    r = re.findall(r''+pattern+'', html, re.M|re.DOTALL)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for name, nurl,thumb in r:
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        url = BASE_URL+nurl
        main.addDirT(name,url,1049,'http://www.tubeplus.me'+thumb,'','','','','')
        if (dialogWait.iscanceled()):
            return False
    if re.findall(r'<div id="paging">', html):
        r = re.findall('\<li title="Page (\d+)"\>.+?"\>(\d+)(?=\<\/a\>\<\/li\>\<li title="Next Page"\>\<a href="/(.+?)")',html)
        for current, total, npurl in r:
            name = '[COLOR=FF67cc33]Page '+current+' of '+total+', Next Page >>>[/COLOR]'
            main.addDir(name, BASE_URL+npurl, 1051, art+'/nextpage.png')
            url = url+':'+total
            name = '[COLOR=FF67cc33]Goto Page[/COLOR]'
            main.addDir(name, url, 1028, art+'/gotopagetr.png')
        
    dialogWait.close()
コード例 #9
0
ファイル: dpstreaming.py プロジェクト: noba3/KoTos
def LISTEPISODE(mname, murl):
    link = main.OPENURL2(murl)
    link = link.replace('\r', '').replace('\n', '').replace('\t', '').replace(
        '&nbsp;', '').replace('\xc2\xa0', '')
    match = re.compile(
        """<p style="text-align: center;">([^<]+)<a (.+?)</p>""",
        re.DOTALL).findall(link)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until Movie list is cached.')
    totalLinks = len(match)
    loadedLinks = 0
    remaining_display = 'Movies loaded :: [B]' + str(
        loadedLinks) + ' / ' + str(totalLinks) + '[/B].'
    dialogWait.update(0, '[B]Will load instantly from now on[/B]',
                      remaining_display)
    for name, url in match:
        mname = mname.split('[')[0]
        mname = mname.replace('&-',
                              '').replace('-', '').replace('Saison', 'Season')
        main.addDirTE(mname + '' + name.replace('Épisode', 'Episode'), url,
                      316, '', '', '', '', '', '')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100) / totalLinks
        remaining_display = 'Movies loaded :: [B]' + str(
            loadedLinks) + ' / ' + str(totalLinks) + '[/B].'
        dialogWait.update(percent, '[B]Will load instantly from now on[/B]',
                          remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
    del dialogWait
コード例 #10
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def MOVIE_MENU():
    html = main.OPENURL2(BASE_URL)
    r = re.findall(r'<h1 id="list_head" class="short">&nbsp;&nbsp;&nbsp;(.+?)</h1>',html)
    for movies_special in r[0:1]:
        main.addDir('[COLOR=FF67cc33]'+movies_special+'[/COLOR]',BASE_URL,1040,art+'/tppopular.png')
    main.addDir('[COLOR=FF67cc33][B]Most Popular Movies[/B][/COLOR]',BASE_URL+'browse/movies/Last/ALL/',1048,art+'/tppopular.png')
    main.addDir('[COLOR=FF67cc33][B]Movies By Genres[/B][/COLOR]',BASE_URL+'browse/movies/',1044,art+'/tpgenres.png')
    main.addDir('[COLOR=FF67cc33][B]Most Popular Genres[/B][/COLOR]',BASE_URL+'browse/movies/',1046,art+'/tpmostpopgenre.png')
    main.addDir('[COLOR=FF67cc33][B]Movies by A to Z[/B][/COLOR]',BASE_URL+'browse/movies/',1047,art+'/tpatoz.png')
コード例 #11
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def INDEXONE(url):
    res_genre = []
    res_url = []
    html = main.OPENURL2(url)
    if html == None:
        return
    r = re.findall('<div id="popular">(.+?)<div id="popular_footer"></div>', html, re.M|re.DOTALL)
    pattern = '<li><a href="/(.+?)">(.+?)</a>'
    r = re.findall(r''+pattern+'', str(r))
    for url, name in r:
        url = BASE_URL+url
        res_genre.append(name.encode('utf8'))
        res_url.append(url.encode('utf8'))
    dialog = xbmcgui.Dialog()
    ret = dialog.select('Choose Genre', res_genre)
    if ret == -1:
        return
    elif ret >= 0:
        genre = res_url [ret - 0]
    html = main.OPENURL2(genre)
    if html == None:
        return
    r = re.findall(r'var chart_movies(.+?)for\s\(movie in chart_movies\)', html, re.M|re.DOTALL)
    pattern = 'tt: \"(.+?)\".+?url: \"/(.+?)\"'
    r = re.findall(r''+pattern+'', str(r))
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for name, url in r:
        main.addDirM(name,url,1026,'','','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
        
            
    dialogWait.close()
コード例 #12
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def SEASONS(mname,url,thumb):
    if thumb == None:
        thumb=''
    if 'http://www.tubeplus.me/' not in url:
        url=BASE_URL+url
    html = main.OPENURL2(url)
    r = re.findall(r'id="l(sea.+?)" class="season"',html,flags=re.DOTALL|re.M)
    for seasons in r:
        linkback=seasons
        seasons=seasons.replace('_',' ').replace('season','Season')
        meta_name = mname+' '+seasons
        main.addDir2(meta_name,url,1050,thumb,linkback)
コード例 #13
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def MOVIEAZ(url):
    html = main.OPENURL2(url)
    if html == None:
        return
    r = re.findall('<div id="alphabetic">(.+?)<!-- ###', html, re.M|re.DOTALL)
    pattern = '<a href=\"\/(.+?)\"\>(.+?)\</a>'
    r = re.findall(r''+pattern+'', str(r))
    for url, name in r:
        url = BASE_URL+url
        thumb=art+'/'+name.lower()+'.png'
        if name =='#':
            thumb=art+'/09.png'
        if 'tv-shows' in url:
            main.addDir(name, url, 1051,thumb)
        else:
            main.addDir(name, url, 1048,thumb)
コード例 #14
0
def LISTFULLS(murl):
    link = main.OPENURL2(murl)
    link = link.replace('\r',
                        '').replace('\n',
                                    '').replace('\t',
                                                '').replace('&nbsp;', '')
    match = re.compile(
        'class="movie movie-block"><img src="([^<]+)" alt=".+?" title="([^<]+)"/>.+?<h2 onclick="window.location.href=\'([^<]+)\'">',
        re.DOTALL).findall(link)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until Movie list is cached.')
    totalLinks = len(match)
    loadedLinks = 0
    remaining_display = 'Movies loaded :: [B]' + str(
        loadedLinks) + ' / ' + str(totalLinks) + '[/B].'
    dialogWait.update(0, '[B]Will load instantly from now on[/B]',
                      remaining_display)
    for thumb, name, url in match:
        name = name.replace("<span style='color: #ff0000'>",
                            '').replace('</span>', '')
        if '/series-tv/' in murl or 'saison' in url:
            main.addDirT(name, url, 798, thumb, '', '', '', '', '')
        else:
            main.addDirM(name, url, 796, thumb, '', '', '', '', '')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100) / totalLinks
        remaining_display = 'Movies loaded :: [B]' + str(
            loadedLinks) + ' / ' + str(totalLinks) + '[/B].'
        dialogWait.update(percent, '[B]Will load instantly from now on[/B]',
                          remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
    del dialogWait
    paginate = re.compile(
        '''<div class="navigation".+? <span.+? <a href="(.+?)">''').findall(
            link)
    if len(paginate) > 0:
        main.addDir('[COLOR blue]Next Page >>>[/COLOR]', paginate[0], 795,
                    art + '/next2.png')

    main.GA("Fullstream2", "List")
コード例 #15
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def EPISODES(mname,url,linkback):
    html = main.OPENURL2(url)
    r = re.compile(r'parts" id="'+linkback+'"><a name=(.+?)<div id="parts_header">',re.M|re.DOTALL).findall(html)
    match = re.compile('href=/(.+?'+linkback+'.+?)">(.+?)</a>').findall(str(r))
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(match)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for url, epi in match:
        epi=main.unescapes(epi)
        epi = epi.replace('\\','').replace('xc2x92','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        main.addDirTE(mname+' '+epi,url,1026,'','','','','','')
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
コード例 #16
0
ファイル: dpstreaming.py プロジェクト: noba3/KoTos
def LISTDP(murl):
    link = main.OPENURL2(murl)
    link = link.replace('\r', '').replace('\n', '').replace('\t', '').replace(
        '&nbsp;', '').replace('\xc2\xa0', '')
    match = re.compile(
        """height=".+?" src="(.+?)".+?<h2><a href="(.+?)" rel=".+?" title=".+?">(.+?)</a></h2>""",
        re.DOTALL).findall(link)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until Movie list is cached.')
    totalLinks = len(match)
    loadedLinks = 0
    remaining_display = 'Movies loaded :: [B]' + str(
        loadedLinks) + ' / ' + str(totalLinks) + '[/B].'
    dialogWait.update(0, '[B]Will load instantly from now on[/B]',
                      remaining_display)
    for thumb, url, name in match:
        name = name.replace("<span style='color: #ff0000'>",
                            '').replace('</span>', '')
        if '/series-tv/' in murl or 'saison' in url:
            main.addDirT(name, url, 315, thumb, '', '', '', '', '')
        else:
            main.addDirM(name, url, 313, thumb, '', '', '', '', '')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100) / totalLinks
        remaining_display = 'Movies loaded :: [B]' + str(
            loadedLinks) + ' / ' + str(totalLinks) + '[/B].'
        dialogWait.update(percent, '[B]Will load instantly from now on[/B]',
                          remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
    del dialogWait
    paginate = re.compile("<a href='(.+?)' class='nextpostslink'>").findall(
        link)
    if len(paginate) > 0 and len(match) == 12:
        main.addDir('Next', paginate[0], 312, art + '/next2.png')

    main.GA("DpStreaming", "List")
コード例 #17
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def MOVIES_SPECIAL(url):
    html = main.OPENURL2(url)
    if html == None:
        return
    r = re.findall(r'<h1 id="list_head" class="short">.+?Movies Special</h1>(.+?)&laquo;More Movies&raquo;</a>',html, re.M|re.DOTALL)
    pattern = '<a target="_blank" title="Watch online: (.+?)" href="/(.+?)"><img'
    r = re.findall(r''+pattern+'',str(r))
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for name, url in r:
        url = BASE_URL+url
        main.addDirM(name,url,1026,'','','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
コード例 #18
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def GENRES(url):
    Curl = url
    html = main.OPENURL2(url)
    if html == None:
        return
    r = re.findall(r'{value:1, te(.+?)var selected_genre', html, re.M)
    pattern = 'xt: "(.+?)"'
    r = re.findall(r''+pattern+'', str(r), re.I|re.DOTALL)
    res_genre = []
    res_url = []
    for genre in r:
        res_genre.append(genre.encode('utf8'))
        res_url.append(genre.encode('utf8'))
    dialog = xbmcgui.Dialog()
    ret = dialog.select('Choose Genre', res_genre)
    if ret == -1:
        return
    elif ret >= 0:
        genre = res_url [ret - 0]
        url = url+genre+'/ALL/'
    try:
        html = main.OPENURL2(url)
        #html = html.replace('xc2\x92', "'")
        if html == None:
            print 'html None'
            return
    except:#Mash can you add your error calling function
        pass#remove the pass and add call to your error routine
    r = re.findall(r'Alphabetically \[\<b\>'+genre+', ALL\<\/b\>\]\<\/div\>(.+?)\<div id=\"list_footer\"\>\<\/div\>', html, re.I|re.M|re.DOTALL)
    pattern = 'title="Watch online: ([^"]*)" href="/([^"]*)"><img border="0" alt=".+?" src="([^"]*)"></a>'
    r = re.findall(pattern, str(r), re.I|re.M|re.DOTALL)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(r)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    
    for name, url, thumb in r:
        url = BASE_URL+url
        if 'tv-shows' in Curl:
             main.addDir(name,url,1049,'http://www.tubeplus.me'+thumb)

        else:
            name = name.replace('\\','').replace('xc2x92','')
            main.addDirM(name,url,1026,'http://www.tubeplus.me'+thumb,'','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
    if re.findall(r'<div id="paging">', html):
        r = re.findall('\<li title="Page (\d+)"\>.+?"\>(\d+)(?=\<\/a\>\<\/li\>\<li title="Next Page"\>\<a href="/(.+?)")',html)
        for current, total, npurl in r:
            name = '[COLOR=FF67cc33]Page '+current+' of '+total+', Next Page >>>[/COLOR]'
            main.addDir(name, BASE_URL+npurl, 1048, art+'/nextpage.png')
            url = url+':'+total
            name = '[COLOR=FF67cc33]Goto Page[/COLOR]'
            main.addDir(name, url, 1028, art+'/gotopagetr.png')
    main.VIEWS()
コード例 #19
0
ファイル: tubeplus.py プロジェクト: the-one-/MashUp
def SEARCH(murl):
    if murl == 'tv':
        seapath=os.path.join(main.datapath,'Search')
        SeaFile=os.path.join(seapath,'SearchHistoryTv')
        try:
            os.makedirs(seapath)
        except:
            pass
            keyb = xbmc.Keyboard('', '[COLOR=FF67cc33]MashUP: Search For Shows or Episodes[/COLOR]')
            keyb.doModal()
            if (keyb.isConfirmed()):
                    search = keyb.getText()
                    encode=urllib.quote(search)
                    if not os.path.exists(SeaFile) and encode != '':
                        open(SeaFile,'w').write('search="%s",'%encode)
                    else:
                        if encode != '':
                            open(SeaFile,'a').write('search="%s",'%encode)
                    searchis=re.compile('search="(.+?)",').findall(open(SeaFile,'r').read())
                    for seahis in reversed(searchis):
                        continue
                    if len(searchis)>=10:
                        searchis.remove(searchis[0])
                        os.remove(SeaFile)
                        for seahis in searchis:
                            try:
                                open(SeaFile,'a').write('search="%s",'%seahis)
                            except:
                                pass
                    surl = 'http://www.tubeplus.me/search/tv-shows/'+encode+'/0/'
                    #SEARCH(url)
            else:
                return TVMENU()
    elif murl=='movie':
        seapath=os.path.join(main.datapath,'Search')
        SeaFile=os.path.join(seapath,'SearchHistory25')
        try:
            os.makedirs(seapath)
        except:
            pass
            keyb = xbmc.Keyboard('', '[COLOR=FF67cc33]MashUP: Search For Movies[/COLOR]')
            keyb.doModal()
            if (keyb.isConfirmed()):
                    search = keyb.getText()
                    encode=urllib.quote(search)
                    if not os.path.exists(SeaFile) and encode != '':
                        open(SeaFile,'w').write('search="%s",'%encode)
                    else:
                        if encode != '':
                            open(SeaFile,'a').write('search="%s",'%encode)
                    searchis=re.compile('search="(.+?)",').findall(open(SeaFile,'r').read())
                    for seahis in reversed(searchis):
                        continue
                    if len(searchis)>=10:
                        searchis.remove(searchis[0])
                        os.remove(SeaFile)
                        for seahis in searchis:
                            try:
                                open(SeaFile,'a').write('search="%s",'%seahis)
                            except:
                                pass
                    surl = 'http://www.tubeplus.me/search/movies/'+encode+'/0/'
                    #SEARCH(url)
            else:
                return MOVIE_MENU()       

    else:
        surl=murl
    html = main.OPENURL2(surl)
    r = re.compile(r'<div id="list_body">(.+?)<div id="list_footer"></div>', re.DOTALL|re.I|re.M).findall(html)
    match = re.compile(r'title="Watch online: ([^"]*)" href="/([^"]*)"><img border="0" alt=".+?" src="([^"]*)"></a>', re.I).findall(str(r))# href',str(r),flags=re.I)
    dialogWait = xbmcgui.DialogProgress()
    ret = dialogWait.create('Please wait until list is cached.')
    totalLinks = len(match)
    loadedLinks = 0
    remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
    dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display)
    for name, url, image in match:
        name = name.replace('_',' ').replace('/','').replace('\\x92',"'").replace('&rsquo;',"'").replace('&quot;','"').replace('&#044;',',')
        if 'tv-shows' in surl:
            main.addDirT(name.replace('.',''),url,1049,'http://www.tubeplus.me'+image,'','','','','')
        else:
            main.addDirM(name.replace('.',''),url,1026,'http://www.tubeplus.me'+image,'','','','','')
        loadedLinks = loadedLinks + 1
        percent = (loadedLinks * 100)/totalLinks
        remaining_display = 'Media loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
        dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
        if (dialogWait.iscanceled()):
            return False
    dialogWait.close()
    del dialogWait