def YEARB(murl): link=main.OPENURL(murl) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','') match=re.compile('<div class="movie_pic"><a href="(.+?)" target=".+?"> <img src="(.+?)" width=".+?" height=".+?" /> </a></div> <div class=".+?"> <div class=".+?"> <h1><a href=".+?" target=".+?"> (.+?) </a></h1> <div class=".+?">Genre: <a href=".+?" target=\'.+?\'>(.+?)</a>.+?Release:.+?Views: <span> (.+?) </span>.+?<span id=RateCount.+?> (.+?) </span> votes.+?<div id=".+?">score:<span id=Rate_.+?>(.+?)</span>').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,thumb,name,genre,views,votes,rating in match: name=name.replace('-','').replace('&','').replace('acute;','') furl= 'http://movie25.com/'+url main.addInfo(name+'[COLOR blue] Views: '+views+'[/COLOR] [COLOR red]Votes: '+votes+'[/COLOR] [COLOR green]Rating: '+rating+'[/COLOR]',furl,3,thumb,genre,'') 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 ye = murl[39:44] r = re.findall("Next</a><a href='search.php.?page=.+?year=.+?'>Last</a>",link) if r: main.addDir('[COLOR red]Enter Page #[/COLOR]',murl,208,art+'/gotopage.png') main.addDir('[COLOR blue]Page 2[/COLOR]','http://www.movie25.com/search.php?page=2&year='+str(ye),9,art+'/next2.png') xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.VIEWS()
def UFCMOVIE25(): surl='http://www.movie25.com/search.php?key=ufc&submit=' link=main.OPENURL(surl) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','') match=re.compile('<div class="movie_pic"><a href="(.+?)" target=".+?"> <img src="(.+?)" width=".+?" height=".+?" /> </a></div> <div class=".+?"> <div class=".+?"> <h1><a href=".+?" target=".+?"> (.+?) </a></h1> <div class=".+?">Genre: <a href=".+?" target=\'.+?\'>(.+?)</a>.+?Release:.+?Views: <span> (.+?) </span>.+?<span id=RateCount.+?> (.+?) </span> votes.+?<div id=".+?">score:<span id=Rate_.+?>(.+?)</span>').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,thumb,name,genre,views,votes,rating in match: name=name.replace('-','').replace('&','').replace('acute;','') furl= 'http://movie25.com/'+url main.addInfo(name+'('+year+')[COLOR blue] Views: '+views+'[/COLOR] [COLOR red]Votes: '+votes+'[/COLOR] [COLOR green]Rating: '+rating+'[/COLOR]',furl,3,thumb,genre,'') 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.addDir('[COLOR blue]Page 2[/COLOR]','http://www.movie25.com/search.php?page=2&key=ufc',9,art+'/next2.png') main.GA("UFC","UFC_Movie25-List")
def Episodes(url): link=main.OPEN_URL(url) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('–',' - ') match=re.compile('<li><strong><a href="([^<]+)">([^<]+)</a>([^<]+)</strong>').findall(link) for url,title,title1 in match: title=title+' ' + title1 #url = url.replace('watch-','watch/')+'/' main.addInfo(title,url,10,'','','')
def AZLIST(url): link=main.OPENURL(url) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','') match=re.compile('<li><a href="([^"]*)" title="[^"]*">[%s]([^"]*)</a>'% name).findall(link) for url,title in match: title=name+title url = 'http://www.couchtuner.ch/' + url main.addInfo(title,url,9,'','','')
def AZLIST(name,url): link=main.OPEN_URL(url) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('–',' - ').replace('<strong>','').replace('</strong>','') #match=re.compile('<li><a href="([^"]*)" title="[^"]*">[%s]([^"]*)</a>'% name).findall(link) match=re.compile('<li><a.+?href="(http://www.couchtuner.la/[^"]*?)">[%s]([^"]*?)</a></li>'% name).findall(link) for url,title in match: title=name+title #url = url.replace('watch-','watch/')+'/' main.addInfo(title,url,9,'','','')
def AZLIST(name,url): link=main.OPEN_URL(url) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','').replace('–',' - ').replace('<strong>','').replace('</strong>','') #match=re.compile('<li><a href="([^"]*)" title="[^"]*">[%s]([^"]*)</a>'% name).findall(link) match=re.compile('placement=.+?href="([^"]*?)" >\s*<img src="([^"]*?)" alt.+?>\s*<div class="well-sx text-center">[%s]([^"]*?)</div>'% name).findall(link) for url,thumb,title in match: title=name+title #url = url.replace('watch-','watch/')+'/' main.addInfo(title,url,9,thumb,'','')
def Episodes(url): link = main.OPEN_URL(url) link = link.replace('\r', '').replace('\n', '').replace('\t', '').replace( ' ', '').replace('–', ' - ') match = re.compile( '<li><strong><a href="([^<]+)">([^<]+)</a>([^<]+)</strong>').findall( link) for url, title, title1 in match: title = title + ' ' + title1 #url = url.replace('watch-','watch/')+'/' main.addInfo(title, url, 10, '', '', '')
def AZLIST(url): link = main.OPEN_URL(url) link = link.replace('\r', '').replace('\n', '').replace('\t', '').replace( ' ', '').replace('–', ' - ') #match=re.compile('<li><a href="([^"]*)" title="[^"]*">[%s]([^"]*)</a>'% name).findall(link) match = re.compile( '<li><strong><a href="([^<]+)">[%s]([^<]+)</a></strong></li>' % name).findall(link) for url, title in match: title = name + title #url = url.replace('watch-','watch/')+'/' main.addInfo(title, url, 9, '', '', '')
def AZLIST(url): link = main.OPENURL(url) link = link.replace('\r', '').replace('\n', '').replace('\t', '').replace(' ', '') match = re.compile('<li><a href="([^"]*)" title="[^"]*">[%s]([^"]*)</a>' % name).findall(link) for url, title in match: title = name + title url = 'http://www.couchtuner.ch/' + url main.addInfo(title, url, 9, '', '', '')
def LISTMOVIES(murl): link=main.OPENURL(murl) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','') match=re.compile('<div class="movie_pic"><a href="(.+?)" ><img src="(.+?)" width=".+?" height=".+?" alt=".+?" /></a></div> <div class=".+?"> <div class=".+?"> <h1><a href=".+?" >(.+?)</a></h1> <div class=".+?">Genre: <a href=".+?" title=\'.+?\'>(.+?)</a>.+?Release:.+?<br/> Views: <span>(.+?)</span>.+?<span>(.+?)</span> votes.+?<div id=".+?">score:<span id=Rate_.+?>(.+?)</span></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,thumb,name,genre,views,votes,rating in match: name=name.replace('-','').replace('&','').replace('acute;','') main.addInfo(name+'[COLOR blue] Views: '+views+'[/COLOR] [COLOR red]Votes: '+votes+'[/COLOR] [COLOR green]Rating: '+rating+'[/COLOR]',url,3,thumb,genre,'') 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("None","Movie25-list") paginate=re.compile('http://www.movie25.com/movies/.+?/index-(.+?).html').findall(murl) if (len(paginate) == 0): purl = murl + 'index-2.html' r = re.findall('Next</a><a href="index-(.+?).html" title="Last" >Last</a>',link) if r: main.addDir('[COLOR red]Enter Page #[/COLOR]',murl,207,art+'/gotopage.png') exist = re.findall('<a href="index-.+?" class=".+?">Next</a>',link) if exist: main.addDir('[COLOR blue]Page 2[/COLOR]',purl,1,art+'/next2.png') else: paginate=re.compile('http://www.movie25.com/movies/(.+?)/index-(.+?).html').findall(murl) for section, page in paginate: pg= int(page) +1 xurl = main.Mainurl + str(section) + '/' + 'index-'+ str (pg) + '.html' main.addDir('[COLOR red]Home[/COLOR]','',0,art+'/home.png') r = re.findall('Next</a><a href="index-(.+?).html" title="Last" >Last</a>',link) if r: main.addDir('[COLOR red]Enter Page #[/COLOR]',murl,207,art+'/gotopage.png') exist = re.findall('<a href="index-.+?" class=".+?">Next</a>',link) if exist: main.addDir('[COLOR blue]Page '+ str(pg)+'[/COLOR]',xurl,1,art+'/next2.png') xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.VIEWS()
def LISTMOVIES(murl): link=main.OPENURL(murl) match=re.compile('<div class="movie_pic"><a href="(.+?)" ><img src="(.+?)" width=".+?" height=".+?" /></a></div>\n <div class="movie_about">\n <div class="movie_about_text">\n <h1><a href=".+?" >(.+?)</a></h1>\n <div class="c">Genre: <a href=".+?/" title=\'.+?\'>(.+?)</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,thumb,mname,genre in match: namelen=len(mname) if mname[-2:namelen-1] == ')': nam= namelen- 6 year = mname[nam:namelen-2] name= mname[0:namelen-7] elif mname[-1:namelen] == ')': nam= namelen- 5 year = mname[nam:namelen-1] name= mname[0:namelen-6] else: name = mname year = '' name=name.replace('-','').replace('&','').replace('acute;','') main.addInfo(name+'('+year+')',url,3,thumb,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()): return False dialogWait.close() del dialogWait main.GA("None","Movie25-list") paginate=re.compile('http://www.movie25.com/movies/.+?/index-(.+?).html').findall(murl) if (len(paginate) == 0): purl = murl + 'index-2.html' main.addDir('[COLOR blue]Page 2[/COLOR]',purl,1,"%s/art/next2.png"%selfAddon.getAddonInfo("path")) else: paginate=re.compile('http://www.movie25.com/movies/(.+?)/index-(.+?).html').findall(murl) for section, page in paginate: pg= int(page) +1 xurl = main.Mainurl + str(section) + '/' + 'index-'+ str (pg) + '.html' main.addDir('[COLOR red]Home[/COLOR]','',0,"%s/art/home.png"%selfAddon.getAddonInfo("path")) main.addDir('[COLOR blue]Page '+ str(pg)+'[/COLOR]',xurl,1,"%s/art/next2.png"%selfAddon.getAddonInfo("path")) xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.VIEWS()
def LISTSP(murl): urllist=['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/','http://oneclickwatch.org/category/movies/page/11/','http://oneclickwatch.org/category/movies/page/12/'] dialogWait = xbmcgui.DialogProgress() ret = dialogWait.create('Please wait until Movie list is cached.') totalLinks = 12 loadedLinks = 0 remaining_display = 'Pages loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(0,'[B]Loading....[/B]',remaining_display) for murl in urllist: link=main.OPENURL(murl) match=re.compile('<h2 class="pagetitle"><a href="(.+?)" rel="bookmark" title=".+?">(.+?)</a></h2>\r\n\t\t\t\t<small>Posted: .+?<strong>.+?</strong> in <a href=".+?" title="View all posts in Movies" rel="category tag">Movies</a><br />\r\n\t\t\t\t</small>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class="postcomments"><a href=".+?" title=".+?">0</a></div>\r\n\r\n\t\t\t\t<div class="entry">\r\n\t\t\t\t\t<p>(.+?) Plot:').findall(link) for url,sitename,mname in match: match=re.compile('(.+?) / .+?').findall(mname) for nname in match: mname = nname match=re.compile('(.+?) aka .+?').findall(mname) for nname in match: mname = nname mname=mname.replace("’","'").replace("amp;","and").replace("#8211;","-") namelen=len(mname) if mname[-2:namelen-1] == ')': nam= namelen- 6 year = mname[nam:namelen-2] name= mname[0:namelen-7] else: nam= namelen- 5 year = mname[nam:namelen-1] year2='('+year+')' name= mname[0:namelen-6] year=year.replace('(2 )','').replace(') ak','') match=re.compile('720p BRRip').findall(sitename) if (len(match) > 0): year2 = '('+year+')'+'[COLOR red] 720p BRRip[/COLOR]' main.addInfo(name+year2,url,26,'','',year) match=re.compile('720p HDRip').findall(sitename) if (len(match) > 0): year2 = '('+year+')'+'[COLOR red] 720p HDRip[/COLOR]' main.addInfo(name+year2,url,26,'','',year) match=re.compile('720p WEBRip').findall(sitename) if (len(match) > 0): year2 = '('+year+')'+'[COLOR red] 720p WEBRip[/COLOR]' main.addInfo(name+year2,url,26,'','',year) match=re.compile('720p BluRay').findall(sitename) if (len(match) > 0): year2 = '('+year+')'+'[COLOR red] 720p BluRay[/COLOR]' main.addInfo(name+year2,url,26,'','',year) name=name.replace('-','').replace('&','').replace('acute;','') loadedLinks = loadedLinks + 1 percent = (loadedLinks * 100)/totalLinks remaining_display = 'Pages loaded :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].' dialogWait.update(percent,'[B]Loading....[/B]',remaining_display) if (dialogWait.iscanceled()): return False dialogWait.close() del dialogWait main.GA("HD","Oneclickwatch")
def FAVS(): favpath=os.path.join(main.datapath,'Favourites') moviefav=os.path.join(favpath,'Movies') FavFile=os.path.join(moviefav,'Fav') if os.path.exists(FavFile): Favs=re.compile('url="(.+?)",name="(.+?)"').findall(open(FavFile,'r').read()) for url,name in Favs: name=name.replace('-','').replace('&','').replace('acute;','') url=url.replace('(','').replace('[','') if url[0]=='m': url='http://movie25.com/'+url link=main.OPENURL(url) match=re.compile('<div class="movie_pic"><a href="(.+?)" target="_blank">').findall(link) for thumb in match: main.addInfo(name,url,3,thumb,'','') else: xbmc.executebuiltin("XBMC.Notification([B][COLOR green]Mash Up[/COLOR][/B],[B]You Have No Saved Favourites[/B],5000,"")") main.GA("None","Movie25-Fav") xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.VIEWS()
def YEARB(murl): link=main.OPENURL(murl) match=re.compile('<div class="movie_pic"><a href="(.+?)" target="_blank">\n <img src="(.+?)" width=".+?" height=".+?" />\n </a></div>\n <div class="movie_about">\n <div class="movie_about_text">\n <h1><a href=".+?" target="_blank">\n (.+?) </a></h1>\n <div class="c">Genre:\n <a href=".+?" target=\'.+?\'>(.+?)</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,thumb,mname,genre in match: namelen=len(mname) if mname[-4:namelen-3] == ')': nam= namelen- 8 year = mname[nam:namelen-4] name= mname[0:namelen-9] elif mname[-3:namelen-2] == ')': nam= namelen- 7 year = mname[nam:namelen-3] name= mname[0:namelen-8] else: name = mname year = '' name=name.replace('-','').replace('&','').replace('acute;','') furl= 'http://movie25.com/'+url main.addInfo(name+'('+year+')',furl,3,thumb,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()): return False dialogWait.close() del dialogWait ye = murl[39:44] main.addDir('[COLOR blue]Page 2[/COLOR]','http://www.movie25.com/search.php?page=2&year='+str(ye),9,"%s/art/next2.png"%selfAddon.getAddonInfo("path")) xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.VIEWS() main.GA("Year","Year-list")
def SEARCH(murl): seapath=os.path.join(main.datapath,'Search') SeaFile=os.path.join(seapath,'SearchHistory25') try: os.makedirs(seapath) except: pass if murl == 'm25': keyb = xbmc.Keyboard('', 'Search Movies') keyb.doModal() if (keyb.isConfirmed()): search = keyb.getText() encode=urllib.quote(search) surl='http://www.movie25.com/search.php?key='+encode+'&submit=' 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 else: return else: encode = murl surl='http://www.movie25.com/search.php?key='+encode+'&submit=' link=main.OPENURL(surl) link=link.replace('\r','').replace('\n','').replace('\t','').replace(' ','') match=re.compile('<div class="movie_pic"><a href="(.+?)" target=".+?"> <img src="(.+?)" width=".+?" height=".+?" /> </a></div> <div class=".+?"> <div class=".+?"> <h1><a href=".+?" target=".+?"> (.+?) </a></h1> <div class=".+?">Genre: <a href=".+?" target=\'.+?\'>(.+?)</a>.+?Release:.+?Views: <span> (.+?) </span>.+?<span id=RateCount.+?> (.+?) </span> votes.+?<div id=".+?">score:<span id=Rate_.+?>(.+?)</span>').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,thumb,name,genre,views,votes,rating in match: name=name.replace('-','').replace('&','').replace('acute;','') furl= 'http://movie25.com/'+url main.addInfo(name+'[COLOR blue] Views: '+views+'[/COLOR] [COLOR red]Votes: '+votes+'[/COLOR] [COLOR green]Rating: '+rating+'[/COLOR]',furl,3,thumb,genre,'') 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 exist = re.findall("<a href='search.php.?page=.+?'>Next</a>",link) if exist: main.addDir('[COLOR blue]Page 2[/COLOR]','http://www.movie25.com/search.php?page=2&key='+encode,9,art+'/next2.png') xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.GA("None","Movie25-Search")
def getFavorites(section_title = None): from resources.universal import favorites fav = favorites.Favorites(addon_id, sys.argv) if(section_title): fav_items = fav.get_my_favorites(section_title=section_title, item_mode='addon') else: fav_items = fav.get_my_favorites(item_mode='addon') if len(fav_items) > 0: for fav_item in fav_items: if (fav_item['isfolder'] == 'false'): if (fav_item['section_addon_title'] == "iWatchOnline Fav's" or fav_item['section_addon_title'] == "Movie Fav's"): main.addPlayM(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "TV Show Fav's"): main.addPlayT(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "TV Episode Fav's"): main.addPlayTE(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "Misc. Fav's"): main.addPlayMs(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "Live Fav's"): main.addPlayL(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "Movie25 Fav's"): main.addInfo(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) else: if (fav_item['section_addon_title'] == "iWatchOnline Fav's" or fav_item['section_addon_title'] == "Movie Fav's"): main.addDirM(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "TV Show Fav's"): main.addDirT(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "TV Episode Fav's"): main.addDirTE(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "Misc. Fav's"): main.addDirMs(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "Live Fav's"): main.addDirL(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('plot',''), fav_item['fanart_url'], fav_item['infolabels'].get('duration',''), fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) elif (fav_item['section_addon_title'] == "Movie25 Fav's"): main.addInfo(fav_item['title'],fav_item['infolabels'].get('item_url',''), fav_item['infolabels'].get('item_mode',''), fav_item['image_url'], fav_item['infolabels'].get('genre',''), fav_item['infolabels'].get('year','')) else: xbmc.executebuiltin("XBMC.Notification([B][COLOR=FF67cc33]Aftershock Up[/COLOR][/B],[B]You Have No Saved Favourites[/B],5000,"")") return
def SEARCH(murl): seapath=os.path.join(main.datapath,'Search') SeaFile=os.path.join(seapath,'SearchHistory25') try: os.makedirs(seapath) except: pass if murl == 'm25': keyb = xbmc.Keyboard('', 'Search Movies') keyb.doModal() if (keyb.isConfirmed()): search = keyb.getText() encode=urllib.quote(search) surl='http://www.movie25.com/search.php?key='+encode+'&submit=' 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 else: encode = murl surl='http://www.movie25.com/search.php?key='+encode+'&submit=' link=main.OPENURL(surl) match=re.compile('<div class="movie_pic"><a href="(.+?)" target="_blank">\n <img src="(.+?)" width=".+?" height=".+?" />\n </a></div>\n <div class="movie_about">\n <div class="movie_about_text">\n <h1><a href=".+?" target="_blank">\n (.+?) </a></h1>\n <div class="c">Genre:\n <a href=".+?" target=\'.+?\'>(.+?)</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,thumb,mname,genre in match: namelen=len(mname) if mname[-4:namelen-3] == ')': nam= namelen- 8 year = mname[nam:namelen-4] name= mname[0:namelen-9] elif mname[-3:namelen-2] == ')': nam= namelen- 7 year = mname[nam:namelen-3] name= mname[0:namelen-8] else: name = mname year = '' name=name.replace('-','').replace('&','').replace('acute;','') furl= 'http://movie25.com/'+url main.addInfo(name+'('+year+')',furl,3,thumb,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()): return False dialogWait.close() del dialogWait main.addDir('[COLOR blue]Page 2[/COLOR]','http://www.movie25.com/search.php?page=2&key='+encode,9,"%s/art/next2.png"%selfAddon.getAddonInfo("path")) main.GA("None","Search")
def NEXTPAGE(murl): match=re.compile('documentaryheaven').findall(murl) if (len(match)>0): link=main.OPENURL(murl) match=re.compile('<a href="(.+?)" title="" rel=".+?"><img class=".+?" src="(.+?)" alt="(.+?)".+?</a>\n </div> \n <div id="postDis">\n \t(.+?)[...]').findall(link) if (len(match)==0): match=re.compile('href="(.+?)" title="" rel=".+?"><img class=".+?" src="(.+?)" alt="(.+?)".+?</a>\n </div> \n <div id="postDis">\n \t(.+?)[...]').findall(link) for url,thumb,name,desc in match: addSport(name,url,88,thumb,desc,'','') paginate=re.compile('http://documentaryheaven.com/page/(.+?)/.?s=(.+?)').findall(murl) for page, search in paginate: pgs = int(page)+1 jurl='http://documentaryheaven.com/page/'+str(pgs)+'/?s='+str(search) main.addDir('[COLOR blue]Page '+str(pgs)+'[/COLOR]',jurl,9,"%s/art/next2.png"%selfAddon.getAddonInfo("path")) else: link=main.OPENURL(murl) match=re.compile('<div class="movie_pic"><a href="(.+?)" target="_blank">\n <img src="(.+?)" width=".+?" height=".+?" />\n </a></div>\n <div class="movie_about">\n <div class="movie_about_text">\n <h1><a href=".+?" target="_blank">\n (.+?) </a></h1>\n <div class="c">Genre:\n <a href=".+?" target=\'.+?\'>(.+?)</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,thumb,mname,genre in match: namelen=len(mname) if mname[-4:namelen-3] == ')': nam= namelen- 8 year = mname[nam:namelen-4] name= mname[0:namelen-9] elif mname[-3:namelen-2] == ')': nam= namelen- 7 year = mname[nam:namelen-3] name= mname[0:namelen-8] else: name = mname year = '' name=name.replace('-','').replace('&','').replace('acute;','') furl= 'http://movie25.com/'+url main.addInfo(name+'('+year+')',furl,3,thumb,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()): return False dialogWait.close() del dialogWait matchx=re.compile('http://www.movie25.com/search.php.+?page=(.+?)&year=(.+?)').findall(murl) if len(matchx)>0: durl = murl + '/' paginate=re.compile('http://www.movie25.com/search.php.+?page=(.+?)&year=(.+?)/').findall(durl) for page, yearb in paginate: pgs = int(page)+1 jurl='http://www.movie25.com/search.php?page='+str(pgs)+'&year='+str(yearb) xbmcplugin.setContent(int(sys.argv[1]), 'Movies') main.VIEWS() else: durl = murl + '/' paginate=re.compile('http://www.movie25.com/search.php.+?page=(.+?)&key=(.+?)/').findall(durl) for page, search in paginate: pgs = int(page)+1 jurl='http://www.movie25.com/search.php?page='+str(pgs)+'&key='+str(search) main.addDir('[COLOR red]Home[/COLOR]','',0,"%s/art/home.png"%selfAddon.getAddonInfo("path")) main.addDir('[COLOR blue]Page '+str(pgs)+'[/COLOR]',jurl,9,"%s/art/next2.png"%selfAddon.getAddonInfo("path"))