def LISTINT(name,url): main.addDir('Search','TV',419,art+'/search.png') urllist=[] page = 1 while page < 15 : urllist.append('http://www.einthusan.com/movies/index.php?lang=hindi&organize=Activity&filtered=RecentlyPosted&org_type=Activity&page='+str(page)) page += 1 if urllist: html = main.batchOPENURL(urllist) urllist=main.unescapes(html) match = re.compile('<a class="movie-cover-wrapper" href="(.+?)"><img src="(.+?)" alt="(.+?)"').findall(urllist) 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 url,thumb,name in match: url=url.replace('../movies/','') thumb=thumb.replace('../movies/','') name = name.replace('hindi movie online','') main.addPlayM(name,MainUrl+url,38,MainUrl+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 main.GA("INT","Einthusan")
def LISTSP(murl): #urllist=main.OPENURL('http://oneclickwatch.org/category/movies/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/2/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/3/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/4/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/5/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/6/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/7/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/8/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/9/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/10/') urllist=main.batchOPENURL(('http://oneclickwatch.org/category/movies/','http://oneclickwatch.org/category/movies/page/2/','http://oneclickwatch.org/category/movies/page/3/','http://oneclickwatch.org/category/movies/page/4/','http://oneclickwatch.org/category/movies/page/5/','http://oneclickwatch.org/category/movies/page/6/','http://oneclickwatch.org/category/movies/page/7/','http://oneclickwatch.org/category/movies/page/8/','http://oneclickwatch.org/category/movies/page/9/','http://oneclickwatch.org/category/movies/page/10/')) if urllist: urllist=main.unescapes(urllist) match=re.compile('<a href="([^<]+)" title=".+?".+? src="(.+?)" .+?/><br />(.+?)<br />').findall(urllist) 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 url,thumb,name in match: name=name.replace('<strong>','').replace('</strong>','') main.addPlayM(name,url,135,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 main.CloseAllDialogs() main.GA("HD","Oneclickwatch")
def LISTFX(): urllist=[] page = 1 while page < 11 : urllist.append('http://estrenosvk.com/ano/2014/'+str(page)+'/') page += 1 if urllist: html = main.batchOPENURL(urllist) urllist=main.unescapes(html) match=re.compile('<a href="([^"]+)"><figure><img src="([^"]+)" alt="([^"]+)">',re.DOTALL).findall(urllist) 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 url,thumb,name in match: name=name.decode('latin-1') name=name.encode('utf-8') main.addPlayM(name,'http://estrenosvk.com/'+url,309,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
def LINKSP4(mname,murl): html = main.OPENURL(murl) html = html.replace('href="http://oneclickmoviez.com/dws/MEGA','') 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('<a rel="nofollow" href="([^"]+?)"[^>]*?>([^<]+?)</a>\s*?\(Single\)<',re.DOTALL).findall(html) if match: urls = [] exlude = "(BAYFILES|RYUSHARE)" for url, host in match: if not re.search(exlude,host): urls.append(url) if urls: contents = main.batchOPENURL(urls, merge=False) i = 0 for url, host in match: if not re.search('(?i)'+exlude,host): thumb = host.lower() thumb = thumb.replace('www.','').replace('.in','').replace('.net','').replace('.com','').replace('.to','').replace('.org','').replace('.ch','') vlink = getlink(contents[i]) i += 1 archive = re.compile('rar').findall(vlink) if not archive: import urlresolver hosted_media = urlresolver.HostedMediaFile(url=vlink, title=host) match2=re.compile("{'url': '(.+?)', 'host': '(.+?)', 'media_id': '.+?'}").findall(str(hosted_media)) for murl,name in match2: main.addDown2(mname+' [COLOR blue]'+host+'[/COLOR]',murl,211,art+'/hosts/'+thumb+".png",art+'/hosts/'+thumb+".png")
def LISTSP4(murl): dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') urllist = main.batchOPENURL( ('http://oneclickmoviez.com/category/bluray/', 'http://oneclickmoviez.com/category/bluray/page/2/', 'http://oneclickmoviez.com/category/bluray/page/3/', 'http://oneclickmoviez.com/category/bluray/page/4/', 'http://oneclickmoviez.com/category/bluray/page/5/')) if urllist: match = re.compile( 'href="(.+?)" rel="bookmark" title=".+?">(.+?)</a></h2>\n</div>\n<div class="cover">\n<div class="entry">\n\t\t\t\t\t<p style="text-align: center;"><img class="alignnone" title="poster" src="(.+?)" ' ).findall(urllist) 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 url, name, thumb in match: main.addDirM(name, url, 56, 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 main.GA("HD", "Oneclickmoviez")
def LISTSP3(murl): subpages = 3 if murl == 'HD': page = 1 max = subpages else: try: pages = murl.split(',', 1) page = int(pages[0]) max = int(pages[1]) except: page = 1 url = 'http://rls1click.com/category/movies/1080p/' urls = [] for n in range(subpages): if page + n == 1: urls.append(url) else: urls.append(url + "page/" + str(page + n) + "/") if page + n == max: break page = page + subpages - 1 link = main.batchOPENURL(urls) if re.compile('"maxPages":"(\d+?)"').findall(link): max = int(re.compile('"maxPages":"(\d+?)"').findall(link)[0]) # link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('&','&') match = re.compile( '(?sim)<h1 class="post-title"><a href="([^"]+?)">([^<]+?)<.*?<img[^>]+?src="([^"]+?)"' ).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 url, title, thumb in match: url = url.decode('utf-8').encode('ascii', 'ignore') main.addPlayM(title, url, 408, thumb, '', '', '', '', '') loadedLinks = loadedLinks + 1 try: percent = (loadedLinks * 100) / totalLinks except: percent = 100 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(): break if page < max and loadedLinks >= totalLinks: main.addDir( 'Page ' + str(page / subpages) + ' [COLOR blue]Next Page >>>[/COLOR]', str(page + 1) + ',' + str(max), 407, art + '/next2.png') dialogWait.close() del dialogWait main.GA("HD-TV", "Rls1Click") main.VIEWS()
def LISTTV2(murl): #xbmc.executebuiltin("XBMC.Notification(Please Wait!,Collecting Source Data,7000)") if murl=='movintv': main.addDir('Search Movie1k','www.movie1k.org',132,art+'/search.png') #urllist=main.OPENURL('http://www.movie1k.ws/category/tv-show/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/2/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/3/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/4/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/5/') urllist=main.batchOPENURL(('http://www.movie1k.ws/category/tv-show/','http://www.movie1k.ws/category/tv-show/page/2/','http://www.movie1k.ws/category/tv-show/page/3/','http://www.movie1k.ws/category/tv-show/page/4/','http://www.movie1k.ws/category/tv-show/page/5/')) elif murl=='movin': #urllist=main.OPENURL('http://www.movie1k.ws/category/hindi-movies/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/2/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/3/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/4/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/5/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/6/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/7/') urllist=main.batchOPENURL(('http://www.movie1k.ws/category/hindi-movies/','http://www.movie1k.ws/category/hindi-movies/page/2/','http://www.movie1k.ws/category/hindi-movies/page/3/','http://www.movie1k.ws/category/hindi-movies/page/4/','http://www.movie1k.ws/category/hindi-movies/page/5/','http://www.movie1k.ws/category/hindi-movies/page/6/','http://www.movie1k.ws/category/hindi-movies/page/7/')) elif murl=='movindub': #urllist=main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/2/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/3/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/4/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/5/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/6/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/7/') urllist=main.batchOPENURL(('http://www.movie1k.ws/category/hindi-dubbed-movies/','http://www.movie1k.ws/category/hindi-dubbed-movies/page/2/','http://www.movie1k.ws/category/hindi-dubbed-movies/page/3/','http://www.movie1k.ws/category/hindi-dubbed-movies/page/4/','http://www.movie1k.ws/category/hindi-dubbed-movies/page/5/','http://www.movie1k.ws/category/hindi-dubbed-movies/page/6/','http://www.movie1k.ws/category/hindi-dubbed-movies/page/7/')) murl=murl if urllist: urllist=urllist.replace('\r','').replace('\n','').replace('\t','').replace(' ','') match=re.compile('<a class="entry-thumbnails-link" href="(.+?)"><img width=".+?" height=".+?" src="(.+?)" class=".+?" alt="Watch (.+?) Online:.+?',re.DOTALL).findall(urllist) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Show list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Movies/Episodes loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display) for url,thumb,name in match: name=name.replace('\xc2\xa0','').replace('" ','').replace(' "','').replace('"','').replace("'","'").replace("&","and").replace("’","'").replace("amp;","and").replace("#8211;","-") if murl=='movintv': main.addPlayTE(name,url,31,thumb,'','','','','') else: main.addPlayM(name,url,31,thumb,'','','','','') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100)/totalLinks remaining_display = 'Movies/Episodes :: [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 main.GA("TV-INT","Movie1k")
def LISTSP3(murl): subpages = 5 if murl == 'HD': page = 1 max = subpages else: try: pages = murl.split(',', 1 ); page = int(pages[0]) max = int(pages[1]) except: page = 1 url='http://dl4free.me/forumdisplay.php?fid=42' urls = [] for n in range(subpages): urls.append(url+"&page="+str(page+n)) if page+n == max: break page = page + subpages - 1 link=main.batchOPENURL(urls) if re.compile('class="pagination_last">(\d+?)</a>').findall(link): max = int(re.compile('class="pagination_last">(\d+?)</a>').findall(link)[0]) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('&','&') match=re.compile('(?sim)<a href="([^"]+?)" class="[^"]+?" id="[^"]+?">([^<]+?)</a></span>\s*?<div class="author smalltext"><a href="[^"]+?">(wroser|BollyCorner)</a></div>').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 url, name, user in match: url = url.decode('utf-8').encode('ascii', 'ignore') url = 'http://dl4free.me/' + url name=main.unescapes(name) if not re.search('(?i)avc',name) and re.search('(?i)1080p?',name): main.addPlayM(name,url,408,'','','','','','') loadedLinks = loadedLinks + 1 else: totalLinks -= 1 try: percent = (loadedLinks * 100)/totalLinks except: percent = 100 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 if page < max: main.addDir('Page ' + str(page/subpages) + ' [COLOR blue]Next Page >>>[/COLOR]',str(page+1)+','+str(max),407,art+'/next2.png') dialogWait.close() del dialogWait #main.GA("HD-TV","DL4Free") main.VIEWS()
def LIST(murl,subp = False): global subpages if subp: subpages = subp parts = murl.partition('%%%') murl = parts[0] page = re.search('(?i)page\/(\d+?)\/',murl) if page: page = int(page.group(1)) else: page = 1 max = page * subpages if parts[-1]: parts = parts[-1].partition('$$$') max = int(parts[0]) if parts[-1]: subpages = int(parts[-1]) urls = [] for n in range(subpages): if page + n > max: break if re.search('[^\d]\/$',murl): urls.append(murl + 'page/'+str(page + n) + '/') elif re.search('movies\/\?',murl): urls.append(murl.replace('movies/?', 'movies/page/'+str(page + n) + '/?')) else: urls.append(re.sub('page\/\d+?\/', 'page/'+str(page + n) + '/',murl)) link=main.batchOPENURL(urls).replace('\\/','/') link=link.replace('\r','').replace('\n','').replace('\t','') match=re.compile('{"ID":.+?,"title":"(.*?)","link":"(.*?)","post_content":"(.*?)","image":"(.*?)","slidercap":"(.*?)","year":"(.*?)","genre":"(.*?)","director":".+?}',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) xbmc.executebuiltin("XBMC.Dialog.Close(busydialog,true)") for name,url,desc,thumb,fan,year,genre in match: main.addPlayM(name+' [COLOR red]('+year+')[/COLOR]',url,423,thumb,desc,fan,'',genre,year) 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(): break dialogWait.close() del dialogWait paginate = re.compile('''<a class="nextpostslink" href="([^<]+)">.+?</a>''',re.DOTALL).findall(link) if len(paginate) == subpages and loadedLinks >= totalLinks: last = re.search('(?i)<a class="last" href="[^"]+?/page/(\d+)/[^"]*?">Last',link) if last: last = int(last.group(1)) else: last = re.findall('(?i)<a class="page larger" href="[^"]+?/page/(\d+)/[^"]*?">',link) if last: last = int(last[-1]) else: last = page + subpages main.addDir('[COLOR red]Enter Page #[/COLOR]',paginate[0]+'%%%'+str(subpages),427,art+'/gotopage.png') main.addDir('Page ' + str(page/subpages+1) + ' [COLOR blue]Next Page >>>[/COLOR]',re.sub('page\/\d+?\/', 'page/'+str(page+subpages)+'/',paginate[0])+'%%%'+str(last)+'$$$'+str(subpages),422,art+'/next2.png') main.GA("Yify","List") main.VIEWS()
def LISTSP3(murl): subpages = 5 if murl == 'HD': page = 1 max = 100 else: try: pages = murl.split(',', 1 ); page = int(pages[0]) max = int(pages[1]) except: page = 1 # http://www.filestube.to/query.html?q=1080p+bluray+-esubs+-msubs+-subs&hosting=85&select=mkv&sizefrom=6000&sizeto=20000&sort=dd&page=1 url='http://www.filestube.to/query.html?q=1080p+bluray+-esubs&hosting=85&select=mkv&sizefrom=6000&sizeto=20000&sort=dd' urls = [] for n in range(subpages): urls.append(url+"&page="+str(page+n)) if page+n == max: break page = page + subpages - 1 link=main.batchOPENURL(urls) # print link next = len(re.compile('rel="nofollow next">Next</a>').findall(link)) == subpages link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('&','&') match=re.compile('(?sim)<a href="([^"]+?)"[^>]*?class="resultsLink"[^>]*?>(.+?)</a>').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 url, name in match: url = url.decode('utf-8').encode('ascii', 'ignore') url = 'http://www.filestube.to' + url name = name.replace('<b>','').replace('</b>','') name=main.unescapes(name) if not re.search('(?i)(\\bsubs\\b|\\msubs\\b|fetish)',name) and re.search('(?i)(20\d\d|19\d\d)',name): main.addPlayM(name,url,406,'','','','','','') loadedLinks = loadedLinks + 1 else: totalLinks -= 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 if next: main.addDir('Page ' + str(page/subpages) + ' [COLOR blue]Next Page >>>[/COLOR]',str(page+1)+','+str(max),405,art+'/next2.png') dialogWait.close() del dialogWait main.GA("HD-TV","FilesTube") main.VIEWS()
def ListSceneLogItems(murl, quality='all'): if murl.startswith('Movies'): main.addDir('Search SceneLog', 'Movies', 659, art + '/search.png') subpages = 5 category = "movies" elif murl.startswith('TV'): main.addDir('Search SceneLog', 'TV', 659, art + '/search.png') subpages = 5 category = "tv-shows" parts = murl.split('-', 1) max = subpages try: pages = parts[1].split(',', 1) page = int(pages[0]) max = int(pages[1]) murl = parts[0] except: page = 0 page = page * subpages html = '' urls = [] for n in range(subpages): if page + n + 1 > max: break urls.append('http://scnlog.eu/' + category + '/page/' + str(page + n + 1) + '/') cached_path = os.path.join( os.path.join(main.datapath, 'Temp'), filename + '_' + murl + "-" + str(page) + '.cache') cached = main.getFile(cached_path) if cached: xbmc.executebuiltin("XBMC.Dialog.Close(busydialog,true)") html = cached else: html = main.batchOPENURL(urls) main.setFile(cached_path, html) hasNextPage = re.compile('<strong>»</strong>').findall(html) if len(hasNextPage) < subpages: page = None hasMax = re.compile('page/(\d+)/">Last »').findall(html) if hasMax: max = hasMax[0] if html: ShowSceneLogItems(html, murl, quality) if not page is None: main.addDir('Page ' + str(page / subpages + 1) + ', Next Page >>>', murl + "-" + str(page / subpages + 1) + "," + max, 657, art + '/next2.png') main.GA("Movies-TV", "SceneLog") main.VIEWS()
def LISTSP3(murl): subpages = 3 if murl == 'HD': page = 1 max = subpages else: try: pages = murl.split(',', 1 ); page = int(pages[0]) max = int(pages[1]) except: page = 1 url='http://rls1click.com/category/movies/1080p/' urls = [] for n in range(subpages): if page+n == 1: urls.append(url) else: urls.append(url+"page/"+str(page+n)+"/") if page+n == max: break page = page + subpages - 1 link=main.batchOPENURL(urls) if re.compile('"maxPages":"(\d+?)"').findall(link): max = int(re.compile('"maxPages":"(\d+?)"').findall(link)[0]) # link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('&','&') match=re.compile('(?sim)<h1 class="post-title"><a href="([^"]+?)">([^<]+?)<.*?<img[^>]+?src="([^"]+?)"').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 url, title, thumb in match: url = url.decode('utf-8').encode('ascii', 'ignore') main.addPlayM(title,url,408,thumb,'','','','','') loadedLinks = loadedLinks + 1 try: percent = (loadedLinks * 100)/totalLinks except: percent = 100 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(): break if page < max and loadedLinks >= totalLinks: main.addDir('Page ' + str(page/subpages) + ' [COLOR blue]Next Page >>>[/COLOR]',str(page+1)+','+str(max),407,art+'/next2.png') dialogWait.close() del dialogWait main.GA("HD-TV","Rls1Click") main.VIEWS()
def ListSceneLogItems(murl,quality='all'): if murl.startswith('Movies'): main.addDir('Search SceneLog','Movies',659,art+'/search.png') subpages = 5 category = "movies" elif murl.startswith('TV'): main.addDir('Search SceneLog','TV',659,art+'/search.png') subpages = 5 category = "tv-shows" parts = murl.split('-', 1 ); max = subpages try: pages = parts[1].split(',', 1 ); page = int(pages[0]) max = int(pages[1]) murl = parts[0] except: page = 0 page = page * subpages; html = '' urls = [] for n in range(subpages): if page + n + 1 > max: break urls.append('http://scnlog.eu/'+category+'/page/'+str(page+n+1)+'/') cached_path = os.path.join(os.path.join(main.datapath,'Temp'), filename + '_' + murl+"-"+str(page)+'.cache') cached = main.getFile(cached_path) if cached: xbmc.executebuiltin("XBMC.Dialog.Close(busydialog,true)") html = cached else: html = main.batchOPENURL(urls) main.setFile(cached_path,html) hasNextPage = re.compile('<strong>»</strong>').findall(html) if len(hasNextPage) < subpages: page = None hasMax = re.compile('page/(\d+)/">Last »').findall(html) if hasMax: max = hasMax[0] if html: ShowSceneLogItems(html,murl,quality) if not page is None: main.addDir('Page ' + str(page/subpages+1) + ', Next Page >>>',murl + "-" + str(page/subpages+1) + "," + max,657,art+'/next2.png') main.GA("Movies-TV","SceneLog") main.VIEWS()
def LINKSP4(mname, murl): html = main.OPENURL(murl) html = html.replace('href="http://oneclickmoviez.com/dws/MEGA', '') 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( '<a rel="nofollow" href="([^"]+?)"[^>]*?>([^<]+?)</a>\s*?\(Single\)<', re.DOTALL).findall(html) if match: urls = [] exlude = "(BAYFILES|RYUSHARE)" for url, host in match: if not re.search(exlude, host): urls.append(url) if urls: contents = main.batchOPENURL(urls, merge=False) i = 0 for url, host in match: if not re.search('(?i)' + exlude, host): thumb = host.lower() thumb = thumb.replace('www.', '').replace('.in', '').replace( '.net', '').replace('.com', '').replace('.to', '').replace('.org', '').replace('.ch', '') vlink = getlink(contents[i]) i += 1 archive = re.compile('rar').findall(vlink) if not archive: import urlresolver hosted_media = urlresolver.HostedMediaFile(url=vlink, title=host) match2 = re.compile( "{'url': '(.+?)', 'host': '(.+?)', 'media_id': '.+?'}" ).findall(str(hosted_media)) for murl, name in match2: main.addDown2( mname + ' [COLOR blue]' + host + '[/COLOR]', murl, 211, art + '/hosts/' + thumb + ".png", art + '/hosts/' + thumb + ".png")
def LISTSP(murl): #urllist=main.OPENURL('http://oneclickwatch.org/category/movies/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/2/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/3/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/4/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/5/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/6/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/7/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/8/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/9/')+main.OPENURL('http://oneclickwatch.org/category/movies/page/10/') urllist = main.batchOPENURL( ('http://oneclickwatch.org/category/movies/', 'http://oneclickwatch.org/category/movies/page/2/', 'http://oneclickwatch.org/category/movies/page/3/', 'http://oneclickwatch.org/category/movies/page/4/', 'http://oneclickwatch.org/category/movies/page/5/', 'http://oneclickwatch.org/category/movies/page/6/', 'http://oneclickwatch.org/category/movies/page/7/', 'http://oneclickwatch.org/category/movies/page/8/', 'http://oneclickwatch.org/category/movies/page/9/', 'http://oneclickwatch.org/category/movies/page/10/')) if urllist: urllist = main.unescapes(urllist) match = re.compile( 'title=".+?">([^<]+)</a></h2>.+?href=".+?<a href="(.+?)" .+?href=".+?>.+?src="(.+?)"' ).findall(urllist) 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, thumb in match: name = name.replace('<strong>', '').replace('</strong>', '') main.addPlayM(name, url, 135, 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 main.CloseAllDialogs() main.GA("HD", "Oneclickwatch")
def LISTTV3(murl): #urllist=main.OPENURL('http://oneclickwatch.org/category/tv-shows/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/2/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/3/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/4/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/5/') urllist = main.batchOPENURL( ('http://oneclickwatch.org/category/tv-shows/', 'http://oneclickwatch.org/category/tv-shows/page/2/', 'http://oneclickwatch.org/category/tv-shows/page/3/', 'http://oneclickwatch.org/category/tv-shows/page/4/', 'http://oneclickwatch.org/category/tv-shows/page/5/')) if urllist: urllist = main.unescapes(urllist) match = re.compile( 'title=".+?">([^<]+)</a></h2>.+?href=".+?<a href="(.+?)" .+?href=".+?>.+?src="(.+?)"' ).findall(urllist) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Show list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Episodes 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 match: name = name.replace('\xc2\xa0', '').replace('" ', '').replace( ' "', '').replace('"', '').replace("'", "'").replace( "&", "and").replace("’", "'").replace("amp;", "and").replace("#8211;", "-") main.addPlayTE(name, url, 134, thumb, '', '', '', '', '') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100) / totalLinks remaining_display = 'Episodes 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 main.GA("TV", "Oneclickwatch")
def LISTINT(name, url): main.addDir('Search', 'TV', 419, art + '/search.png') urllist = [] page = 1 while page < 15: urllist.append( 'http://www.einthusan.com/movies/index.php?lang=hindi&organize=Activity&filtered=RecentlyPosted&org_type=Activity&page=' + str(page)) page += 1 if urllist: html = main.batchOPENURL(urllist) urllist = main.unescapes(html) match = re.compile( '<a class="movie-cover-wrapper" href="(.+?)"><img src="(.+?)" alt="(.+?)"' ).findall(urllist) 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 url, thumb, name in match: url = url.replace('../movies/', '') thumb = thumb.replace('../movies/', '') name = name.replace('hindi movie online', '') main.addPlayM(name, MainUrl + url, 38, MainUrl + 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 main.GA("INT", "Einthusan")
def LISTSP4(murl): #urllist=main.OPENURL('http://oneclickmoviez.com/category/bluray/')+main.OPENURL('http://oneclickmoviez.com/category/bluray/page/2/')+main.OPENURL('http://oneclickmoviez.com/category/bluray/page/3/')+main.OPENURL('http://oneclickmoviez.com/category/bluray/page/4/')+main.OPENURL('http://oneclickmoviez.com/category/bluray/page/5/') urllist=main.batchOPENURL(('http://oneclickmoviez.com/category/bluray/','http://oneclickmoviez.com/category/bluray/page/2/','http://oneclickmoviez.com/category/bluray/page/3/','http://oneclickmoviez.com/category/bluray/page/4/','http://oneclickmoviez.com/category/bluray/page/5/')) if urllist: match=re.compile('href="(.+?)" rel="bookmark" title=".+?">(.+?)</a></h2>\n</div>\n<div class="cover">\n<div class="entry">\n\t\t\t\t\t<p style="text-align: center;"><img class="alignnone" title="poster" src="(.+?)" ').findall(urllist) 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 url,name, thumb in match: main.addDirM(name,url,56,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 main.GA("HD","Oneclickmoviez")
def LISTFX(): urllist=[] page = 1 while page < 11 : urllist.append('http://www.fxcine.com/la/peliculas/page/'+str(page)+'/') page += 1 if urllist: html = main.batchOPENURL(urllist) urllist=main.unescapes(html) match=re.compile('class="load-local" href="(.+?)" rel=".+?div class="peli_img_img.+?img src="(.+?)" alt=".+?".+?<p class="sinopsis">(.+?)</p>.+?<div class="divcen">(.+?)<div class="sep-w">.+?alt="(.+?) on IMDb"',re.DOTALL).findall(urllist) 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 url,thumb,desc,lang,name in match: name=name.decode('latin-1') name=name.encode('utf-8') desc=desc.decode('latin-1') desc=desc.encode('utf-8') if 'eng1 d_inlineb' in lang: name= name+' [COLOR red]ENG[/COLOR]' if 'sub1 d_inlineb' in lang: name= name+' [COLOR green]SUB[/COLOR]' if 'lat1 d_inlineb' in lang: name= name+' [COLOR yellow]LAT[/COLOR]' if 'cas1 d_inlineb' in lang: name= name+' [COLOR blue]CAS[/COLOR]' main.addDirM(name,url,309,thumb,desc,'','','','') 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 main.GA("INT","FXCine")
def LISTTV3(murl): #urllist=main.OPENURL('http://oneclickwatch.org/category/tv-shows/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/2/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/3/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/4/')+main.OPENURL('http://oneclickwatch.org/category/tv-shows/page/5/') urllist=main.batchOPENURL(('http://oneclickwatch.org/category/tv-shows/','http://oneclickwatch.org/category/tv-shows/page/2/','http://oneclickwatch.org/category/tv-shows/page/3/','http://oneclickwatch.org/category/tv-shows/page/4/','http://oneclickwatch.org/category/tv-shows/page/5/')) if urllist: urllist=main.unescapes(urllist) match=re.compile('title=".+?">([^<]+)</a></h2>.+?href=".+?<a href="(.+?)" .+?href=".+?>.+?src="(.+?)"').findall(urllist) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Show list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Episodes 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 match: name=name.replace('\xc2\xa0','').replace('" ','').replace(' "','').replace('"','').replace("'","'").replace("&","and").replace("’","'").replace("amp;","and").replace("#8211;","-") main.addPlayTE(name,url,134,thumb,'','','','','') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100)/totalLinks remaining_display = 'Episodes 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
def LISTFX(): urllist = [] page = 1 while page < 11: urllist.append('http://estrenosvk.com/ano/2014/' + str(page) + '/') page += 1 if urllist: html = main.batchOPENURL(urllist) urllist = main.unescapes(html) match = re.compile( '<a href="([^"]+)"><figure><img src="([^"]+)" alt="([^"]+)">', re.DOTALL).findall(urllist) 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 url, thumb, name in match: name = name.decode('latin-1') name = name.encode('utf-8') main.addPlayM(name, 'http://estrenosvk.com/' + url, 309, 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 main.GA("INT", "FXCine")
def ListSceneLogItems(murl,quality='all'): if murl.startswith('Movies'): main.addDir('Search SceneLog','Movies',659,art+'/search.png') subpages = 5 category = "movies" elif murl.startswith('TV'): main.addDir('Search SceneLog','TV',659,art+'/search.png') subpages = 5 category = "tv-shows" parts = murl.split('-', 1 ); max = subpages try: pages = parts[1].split(',', 1 ); page = int(pages[0]) max = int(pages[1]) murl = parts[0] except: page = 0 page = page * subpages; html = '' urls = [] for n in range(subpages): if page + n + 1 > max: break urls.append('http://scenelog.eu/'+category+'/page/'+str(page+n+1)+'/') html = main.batchOPENURL(urls) hasNextPage = re.compile('<strong>»</strong>').findall(html) if len(hasNextPage) < subpages: page = None hasMax = re.compile('page/(\d+)/">Last »').findall(html) if hasMax: max = hasMax[0] if html: ShowSceneLogItems(html,murl,quality) if not page is None: main.addDir('Page ' + str(page/subpages+1) + ', Next Page >>>',murl + "-" + str(page/subpages+1) + "," + max,657,art+'/next2.png') main.GA("Movies-TV","SceneLog") main.VIEWS()
def LISTSP3(murl): subpages = 5 if murl == 'HD': page = 1 max = subpages else: try: pages = murl.split(',', 1) page = int(pages[0]) max = int(pages[1]) except: page = 1 url = 'http://dl4free.me/forumdisplay.php?fid=42' urls = [] for n in range(subpages): urls.append(url + "&page=" + str(page + n)) if page + n == max: break page = page + subpages - 1 link = main.batchOPENURL(urls) if re.compile('class="pagination_last">(\d+?)</a>').findall(link): max = int( re.compile('class="pagination_last">(\d+?)</a>').findall(link)[0]) link = link.replace('\r', '').replace('\n', '').replace('\t', '').replace( ' ', '').replace('&', '&') match = re.compile( '(?sim)<a href="([^"]+?)" class="[^"]+?" id="[^"]+?">([^<]+?)</a></span>\s*?<div class="author smalltext"><a href="[^"]+?">(wroser|BollyCorner)</a></div>' ).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 url, name, user in match: url = url.decode('utf-8').encode('ascii', 'ignore') url = 'http://dl4free.me/' + url name = main.unescapes(name) if not re.search('(?i)avc', name) and re.search('(?i)1080p?', name): main.addPlayM(name, url, 408, '', '', '', '', '', '') loadedLinks = loadedLinks + 1 else: totalLinks -= 1 try: percent = (loadedLinks * 100) / totalLinks except: percent = 100 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 if page < max: main.addDir( 'Page ' + str(page / subpages) + ' [COLOR blue]Next Page >>>[/COLOR]', str(page + 1) + ',' + str(max), 407, art + '/next2.png') dialogWait.close() del dialogWait main.GA("HD-TV", "DL4Free") main.VIEWS()
def LISTSP2(murl): if murl.startswith('3D'): main.addDir('Search Newmyvideolinks','movieNEW',102,art+'/search.png') subpages = 2 max = 9 category = "3-d-movies" elif murl.startswith('TV'): main.addDir('Search Newmyvideolinks','tvNEW',102,art+'/search.png') subpages = 3 max = 50 category = "tv-shows" else: main.addDir('Search Newmyvideolinks','movieNEW',102,art+'/search.png') subpages = 5 max = 250 category = "bluray" parts = murl.split('-', 1 ); try: pages = parts[1].split(',', 1 ); page = int(pages[0]) max = int(pages[1]) murl = parts[0] except: page = 0 page = page * subpages; urllist = '' urls = [] for n in range(subpages): if page + n + 1 > max: break urls.append('http://www.myvideolinks.eu/category/movies/'+category+'/page/'+str(page+n+1)) urllist = main.batchOPENURL(urls) hasNextPage = re.compile('>›</a>').findall(urllist) if category != "3-d-movies" and len(hasNextPage) < subpages or category == "3-d-movies" and subpages * page > max: page = None else: hasMax = re.compile("page/(\d+?)/'>»</a>").findall(urllist) if hasMax: max = hasMax[0] if urllist: urllist=main.unescapes(urllist) #link=main.OPENURL(xurl) match=re.compile(pattern).findall(urllist) # if not match: # match=re.compile('<h3><a href="()([^"]+?)"[^>]+?title="([^"]+?)"').findall(urllist) if match: dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Movies/Episodes Cached :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display) for url,thumb,title in match: if murl=='TV': if re.compile('720p').findall(title): title = re.sub('(?i)(.*?)(hdtv|pdtv|proper|repack|webrip|720p).*','\\1',title).strip() title = re.sub('(?i)(.*E\d+[^\s]) (.*)','\\1 [COLOR blue]\\2[/COLOR]',title).strip() title += ' [COLOR red]720p[/COLOR]' main.addDirTE(title,url,35,thumb,'','','','','') else: main.addDirM(title,url,35,thumb,'','','','','') xbmcplugin.setContent(int(sys.argv[1]), 'Movies') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100)/totalLinks remaining_display = 'Movies/Episodes Cached :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display) if dialogWait.iscanceled(): break if not page is None and loadedLinks >= totalLinks: main.addDir('Page ' + str(page/subpages+1) + ' [COLOR blue]Next Page >>>[/COLOR]',murl + "-" + str(page/subpages+1) + "," + str(max),34,art+'/next2.png') dialogWait.close() del dialogWait main.GA("HD-3D-HDTV","Newmyvideolinks") main.VIEWS()
def LIST(murl, subp=False): global subpages if subp: subpages = subp parts = murl.partition('%%%') murl = parts[0] page = re.search('(?i)page\/(\d+?)\/', murl) if page: page = int(page.group(1)) else: page = 1 max = page * subpages if parts[-1]: parts = parts[-1].partition('$$$') max = int(parts[0]) if parts[-1]: subpages = int(parts[-1]) urls = [] for n in range(subpages): if page + n > max: break if re.search('[^\d]\/$', murl): urls.append(murl + 'page/' + str(page + n) + '/') elif re.search('movies\/\?', murl): urls.append( murl.replace('movies/?', 'movies/page/' + str(page + n) + '/?')) else: urls.append( re.sub('page\/\d+?\/', 'page/' + str(page + n) + '/', murl)) link = main.batchOPENURL(urls).replace('\\/', '/') link = link.replace('\r', '').replace('\n', '').replace('\t', '') match = re.compile( '{"ID":.+?,"title":"(.*?)","link":"(.*?)","post_content":"(.*?)","image":"(.*?)","slidercap":"(.*?)","year":"(.*?)","genre":"(.*?)","director":".+?}', 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) xbmc.executebuiltin("XBMC.Dialog.Close(busydialog,true)") for name, url, desc, thumb, fan, year, genre in match: main.addPlayM(name + ' [COLOR red](' + year + ')[/COLOR]', url, 423, thumb, desc, fan, '', genre, year) 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(): break dialogWait.close() del dialogWait paginate = re.compile( '''<a class="nextpostslink" href="([^<]+)">.+?</a>''', re.DOTALL).findall(link) if len(paginate) == subpages and loadedLinks >= totalLinks: last = re.search( '(?i)<a class="last" href="[^"]+?/page/(\d+)/[^"]*?">Last', link) if last: last = int(last.group(1)) else: last = re.findall( '(?i)<a class="page larger" href="[^"]+?/page/(\d+)/[^"]*?">', link) if last: last = int(last[-1]) else: last = page + subpages main.addDir('[COLOR red]Enter Page #[/COLOR]', paginate[0] + '%%%' + str(subpages), 427, art + '/gotopage.png') main.addDir( 'Page ' + str(page / subpages + 1) + ' [COLOR blue]Next Page >>>[/COLOR]', re.sub('page\/\d+?\/', 'page/' + str(page + subpages) + '/', paginate[0]) + '%%%' + str(last) + '$$$' + str(subpages), 422, art + '/next2.png') main.GA("Yify", "List") main.VIEWS()
def LISTSP2(murl): if murl.startswith('3D'): main.addDir('Search Newmyvideolinks','movieNEW',102,art+'/search.png') subpages = 2 category = "3-d-movies" elif murl.startswith('TV'): main.addDir('Search Newmyvideolinks','tvNEW',102,art+'/search.png') subpages = 3 category = "tv-shows" else: main.addDir('Search Newmyvideolinks','movieNEW',102,art+'/search.png') subpages = 5 category = "bluray" parts = murl.split('-', 1 ); max = subpages print murl try: pages = parts[1].split(',', 1 ); page = int(pages[0]) max = int(pages[1]) murl = parts[0] except: page = 0 page = page * subpages; urllist = '' urls = [] for n in range(subpages): if page + n + 1 > max: break urls.append('http://www.myvideolinks.eu/category/movies/'+category+'/page/'+str(page+n+1)) urllist = main.batchOPENURL(urls) hasNextPage = re.compile('>»</a>').findall(urllist) if len(hasNextPage) < subpages: page = None hasMax = re.compile('Page \d+ of (\d+)').findall(urllist) if hasMax: max = hasMax[0] if urllist: urllist=main.unescapes(urllist) #link=main.OPENURL(xurl) match=re.compile("""<a href=".+?" rel=".+?" title=".+?"> <img src="(.+?)" width=".+?" height=".+?" title="(.+?)" class=".+?"></a><h4><a href="(.+?)" rel""").findall(urllist) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Movies/Episodes Cached :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(0,'[B]Will load instantly from now on[/B]',remaining_display) if len(match)>0: for thumb,name,url in match: if murl=='TV': match=re.compile('720p').findall(name) if (len(match)>0): main.addDirTE(name,url,35,thumb,'','','','','') else: main.addDirM(name,url,35,thumb,'','','','','') xbmcplugin.setContent(int(sys.argv[1]), 'Movies') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100)/totalLinks remaining_display = 'Movies/Episodes Cached :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display) if (dialogWait.iscanceled()): return False if not page is None: main.addDir('Page ' + str(page/subpages+1) + ', Next Page >>>',murl + "-" + str(page/subpages+1) + "," + max,34,art+'/next2.png') dialogWait.close() del dialogWait main.GA("HD-3D-HDTV","Newmyvideolinks") main.VIEWS()
def LISTSP2(murl): if murl.startswith('3D'): main.addDir('Search Newmyvideolinks', 'movieNEW', 102, art + '/search.png') subpages = 2 max = 9 category = "3-d-movies" elif murl.startswith('TV'): main.addDir('Search Newmyvideolinks', 'tvNEW', 102, art + '/search.png') subpages = 3 max = 50 category = "tv-shows" else: main.addDir('Search Newmyvideolinks', 'movieNEW', 102, art + '/search.png') subpages = 5 max = 250 category = "bluray" parts = murl.split('-', 1) try: pages = parts[1].split(',', 1) page = int(pages[0]) max = int(pages[1]) murl = parts[0] except: page = 0 page = page * subpages urllist = '' urls = [] for n in range(subpages): if page + n + 1 > max: break if category == "tv-shows": urls.append('http://tv.myvideolinks.eu/page/' + str(page + n + 1)) else: urls.append('http://www.myvideolinks.me/category/movies/' + category + '/page/' + str(page + n + 1)) urllist = main.batchOPENURL(urls) hasNextPage = re.compile('>›</a>').findall(urllist) if category != "3-d-movies" and len( hasNextPage ) < subpages or category == "3-d-movies" and subpages * page > max: page = None else: hasMax = re.compile("page/(\d+?)/'>»</a>").findall(urllist) if hasMax: max = hasMax[0] if urllist: urllist = main.unescapes(urllist) #link=main.OPENURL(xurl) match = re.compile(pattern).findall(urllist) # if not match: # match=re.compile('<h3><a href="()([^"]+?)"[^>]+?title="([^"]+?)"').findall(urllist) if match: dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Movies/Episodes Cached :: [B]' + str( loadedLinks) + ' / ' + str(totalLinks) + '[/B].' dialogWait.update(0, '[B]Will load instantly from now on[/B]', remaining_display) for url, thumb, title in match: if murl == 'TV': # if re.compile('720p').findall(title): title = main.CleanTitle(title) main.addDirTE(title, url, 35, thumb, '', '', '', '', '') else: title = main.CleanTitle(title) main.addDirM(title, url, 35, thumb, '', '', '', '', '') xbmcplugin.setContent(int(sys.argv[1]), 'Movies') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100) / totalLinks remaining_display = 'Movies/Episodes Cached :: [B]' + str( loadedLinks) + ' / ' + str(totalLinks) + '[/B].' dialogWait.update(percent, '[B]Will load instantly from now on[/B]', remaining_display) if dialogWait.iscanceled(): break if not page is None and loadedLinks >= totalLinks: main.addDir( 'Page ' + str(page / subpages + 1) + ' [COLOR blue]Next Page >>>[/COLOR]', murl + "-" + str(page / subpages + 1) + "," + str(max), 34, art + '/next2.png') dialogWait.close() del dialogWait main.GA("HD-3D-HDTV", "Newmyvideolinks") main.VIEWS()
def LISTSP3(murl): subpages = 5 if murl == 'HD': page = 1 max = 100 else: try: pages = murl.split(',', 1 ); page = int(pages[0]) max = int(pages[1]) except: page = 1 # http://www.filestube.com/query.html?q=1080p+bluray+-esubs+-msubs+-subs&hosting=85&select=mkv&sizefrom=6000&sizeto=20000&sort=dd&page=1 hosts = "" possiblehosts = ( ["lumfile.com","85"], ["turbobit.net","40"], # ["fileom.com","106"], # ["letitbit.net","25"], ) for h,n in possiblehosts: if main.supportedHost(h): hosts += n+"%2C" hosts = hosts.rstrip("%2C") url='http://www.filestube.com/query.html?q=1080p+bluray+-esubs&hosting='+hosts+'&select=mkv&sizefrom=5000&sizeto=20000&sort=dd' urls = [] for n in range(subpages): urls.append(url+"&page="+str(page+n)) if page+n == max: break page = page + subpages - 1 link=main.batchOPENURL(urls) # print link next = len(re.compile('>►</a>').findall(link)) == subpages link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('&','&') match=re.compile('(?sim)<a href="([^"]+?)"[^>]*?class="rL"[^>]*?>(.+?)</a>.*?class="eT.*?<b>([^>]*?)<').findall(link) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') match1 = [] for url, name, hostsite in match: name = name.replace('<b>','').replace('</b>','') name=main.unescapes(name) if not re.search('(?i)(\\bsubs\\b|\\msubs\\b|fetish)',name) and re.search('(?i)(20\d\d|19\d\d)',name): match1.append((url,name,hostsite)) match = match1 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 url, name, hostsite in match: url = url.decode('utf-8').encode('ascii', 'ignore') url = 'http://www.filestube.com' + url main.addPlayM(main.CleanTitle(name.strip()) + " [COLOR red]" + hostsite + "[/COLOR]",url,406,'','','','','','') 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(): break if next and loadedLinks >= totalLinks: main.addDir('Page ' + str(page/subpages) + ' [COLOR blue]Next Page >>>[/COLOR]',str(page+1)+','+str(max),405,art+'/next2.png') dialogWait.close() del dialogWait #main.GA("HD-TV","FilesTube") main.VIEWS()
def LISTSP3(murl): subpages = 5 if murl == 'HD': page = 1 max = 100 else: try: pages = murl.split(',', 1 ); page = int(pages[0]) max = int(pages[1]) except: page = 1 # http://www.filestube.to/query.html?q=1080p+bluray+-esubs+-msubs+-subs&hosting=85&select=mkv&sizefrom=6000&sizeto=20000&sort=dd&page=1 hosts = "" possiblehosts = ( ["lumfile.com","85"], ["turbobit.net","40"], # ["fileom.com","106"], # ["letitbit.net","25"], ) for h,n in possiblehosts: if main.supportedHost(h): hosts += n+"%2C" hosts = hosts.rstrip("%2C") url='http://www.filestube.to/query.html?q=1080p+bluray+-esubs&hosting='+hosts+'&select=mkv&sizefrom=5000&sizeto=20000&sort=dd' urls = [] for n in range(subpages): urls.append(url+"&page="+str(page+n)) if page+n == max: break page = page + subpages - 1 link=main.batchOPENURL(urls) # print link next = len(re.compile('>►</a>').findall(link)) == subpages link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('&','&') match=re.compile('(?sim)<a href="([^"]+?)"[^>]*?class="rL"[^>]*?>(.+?)</a>.*?class="eT.*?<b>([^>]*?)<').findall(link) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') match1 = [] for url, name, hostsite in match: name = name.replace('<b>','').replace('</b>','') name=main.unescapes(name) if not re.search('(?i)(\\bsubs\\b|\\msubs\\b|fetish)',name) and re.search('(?i)(20\d\d|19\d\d)',name): match1.append((url,name,hostsite)) match = match1 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 url, name, hostsite in match: url = url.decode('utf-8').encode('ascii', 'ignore') url = 'http://www.filestube.to' + url main.addPlayM(name.strip() + " [COLOR red]" + hostsite + "[/COLOR]",url,406,'','','','','','') 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(): break if next and loadedLinks >= totalLinks: main.addDir('Page ' + str(page/subpages) + ' [COLOR blue]Next Page >>>[/COLOR]',str(page+1)+','+str(max),405,art+'/next2.png') dialogWait.close() del dialogWait main.GA("HD-TV","FilesTube") main.VIEWS()
def LISTTV2(murl): #xbmc.executebuiltin("XBMC.Notification(Please Wait!,Collecting Source Data,7000)") if murl == 'movintv': main.addDir('Search Movie1k', 'www.movie1k.org', 132, art + '/search.png') #urllist=main.OPENURL('http://www.movie1k.ws/category/tv-show/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/2/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/3/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/4/')+main.OPENURL('http://www.movie1k.ws/category/tv-show/page/5/') urllist = main.batchOPENURL( ('http://www.movie1k.ws/category/tv-show/', 'http://www.movie1k.ws/category/tv-show/page/2/', 'http://www.movie1k.ws/category/tv-show/page/3/', 'http://www.movie1k.ws/category/tv-show/page/4/', 'http://www.movie1k.ws/category/tv-show/page/5/')) elif murl == 'movin': #urllist=main.OPENURL('http://www.movie1k.ws/category/hindi-movies/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/2/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/3/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/4/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/5/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/6/')+main.OPENURL('http://www.movie1k.ws/category/hindi-movies/page/7/') urllist = main.batchOPENURL( ('http://www.movie1k.ws/category/hindi-movies/', 'http://www.movie1k.ws/category/hindi-movies/page/2/', 'http://www.movie1k.ws/category/hindi-movies/page/3/', 'http://www.movie1k.ws/category/hindi-movies/page/4/', 'http://www.movie1k.ws/category/hindi-movies/page/5/', 'http://www.movie1k.ws/category/hindi-movies/page/6/', 'http://www.movie1k.ws/category/hindi-movies/page/7/')) elif murl == 'movindub': #urllist=main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/2/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/3/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/4/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/5/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/6/')+main.OPENURL('http://www.movie1k.ws/category/hindi-dubbed-movies/page/7/') urllist = main.batchOPENURL( ('http://www.movie1k.ws/category/hindi-dubbed-movies/', 'http://www.movie1k.ws/category/hindi-dubbed-movies/page/2/', 'http://www.movie1k.ws/category/hindi-dubbed-movies/page/3/', 'http://www.movie1k.ws/category/hindi-dubbed-movies/page/4/', 'http://www.movie1k.ws/category/hindi-dubbed-movies/page/5/', 'http://www.movie1k.ws/category/hindi-dubbed-movies/page/6/', 'http://www.movie1k.ws/category/hindi-dubbed-movies/page/7/')) murl = murl if urllist: urllist = urllist.replace('\r', '').replace('\n', '').replace( '\t', '').replace(' ', '') match = re.compile( '<a class="entry-thumbnails-link" href="(.+?)"><img width=".+?" height=".+?" src="(.+?)" class=".+?" alt="Watch (.+?) Online:.+?', re.DOTALL).findall(urllist) dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Show list is cached.') totalLinks = len(match) loadedLinks = 0 remaining_display = 'Movies/Episodes loaded :: [B]' + str( loadedLinks) + ' / ' + str(totalLinks) + '[/B].' dialogWait.update(0, '[B]Will load instantly from now on[/B]', remaining_display) for url, thumb, name in match: name = name.replace('\xc2\xa0', '').replace('" ', '').replace( ' "', '').replace('"', '').replace("'", "'").replace( "&", "and").replace("’", "'").replace("amp;", "and").replace("#8211;", "-") if murl == 'movintv': main.addPlayTE(name, url, 31, thumb, '', '', '', '', '') else: main.addPlayM(name, url, 31, thumb, '', '', '', '', '') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100) / totalLinks remaining_display = 'Movies/Episodes :: [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 main.GA("TV-INT", "Movie1k")