本文整理汇总了Python中resources.libs.main.unescapes函数的典型用法代码示例。如果您正苦于以下问题:Python unescapes函数的具体用法?Python unescapes怎么用?Python unescapes使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了unescapes函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: LINK
def LINK(mname,murl,thumb):
xbmc.executebuiltin("XBMC.Notification(Please Wait!,Playing Video,4000)")
ok= True
link=main.OPENURL(murl)
link=main.unescapes(link)
r = re.findall('player.releaseURL = "(.+?)";',link)
if r:
print r
try:
link=main.OPENURL(r[0])
link=main.unescapes(link)
except:
xbmc.executebuiltin("XBMC.Notification(Sorry!,No Link Found,3000)")
link=''
match = re.findall('<video src="(.+?)" title=.+?abstract="(.+?)"',link)
for vurl,desc in match:
flv = re.findall('flv',vurl)
if flv:
vid='rtmp://cp74847.edgefcs.net/ondemand/'+vurl
else:
vid=vurl
stream_url=vid
infoL={ "Title": mname, "Plot": desc}
# play with bookmark
player = playbackengine.PlayWithoutQueueSupport(resolved_url=stream_url, addon_id=addon_id, video_type='', title=mname,season='', episode='', year='',img=thumb,infolabels=infoL, watchedCallbackwithParams=main.WatchedCallbackwithParams,imdb_id='')
#WatchHistory
main.GA("GolfChannel","Watched")
if selfAddon.getSetting("whistory") == "true":
wh.add_item(mname+' '+'[COLOR green]GolfChannel[/COLOR]', sys.argv[0]+sys.argv[2], infolabels='', img=thumb, fanart='', is_folder=False)
player.KeepAlive()
return ok
else:
xbmc.executebuiltin("XBMC.Notification(Sorry!,No Link Found,3000)")
return ok
示例2: LIST
def LIST(type):
path=os.path.join(profile,type.replace('25','')+'_lite.json')
f = open(path)
field=json.loads(f.read())
dialogWait = xbmcgui.DialogProgress()
ret = dialogWait.create('Please wait until Content list is cached.')
if '25movies'in type: totalLinks = 25
else: totalLinks = len(field)
loadedLinks = 0
remaining_display = 'Content Cached :: [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)")
field = sorted(field,key=lambda x:x['poster'],reverse=True)
try:
updates = ''
if 'movies'in type or '25movies'in type: path = os.path.join(profile,'news_movies.json')
else: path = os.path.join(profile,'news_tv.json')
updates = open(path).read()
field = sorted(field,key=lambda word: negtopos(updates.find('"id":'+word['id']+',')))
except: pass
if '25movies'in type: field=field[0:25]
for data in field:
#genre=str(data["genres"]).replace("u'",'').replace("'",'').replace("[",'').replace("]",'')
if data['active'] == '1':
thumb=str(data["poster"]).replace("\/'",'/')
if 'movies'in type or '25movies'in type: main.addDown4(main.unescapes(str(data["title"].encode('utf-8')))+' ('+str(data["year"])+')',apibase+'/api/serials/get_movie_data?id='+str(data["id"]),279,thumb,'','','','','')
elif 'music' in type: main.addDirMs(main.unescapes(str(data["title"].encode('utf-8'))),apibase+'/api/serials/get_artist_data/?id='+str(data["id"])+'&type=1',302,thumb,'','','','','')
else: main.addDirT(main.unescapes(str(data["title"].encode('utf-8'))),data["id"]+'xoxe'+data["seasons"],280,thumb,'','','','','')
loadedLinks = loadedLinks + 1
percent = (loadedLinks * 100)/totalLinks
remaining_display = 'Content Cached :: [B]'+str(loadedLinks)+' / '+str(totalLinks)+'[/B].'
dialogWait.update(percent,'[B]Will load instantly from now on[/B]',remaining_display)
if dialogWait.iscanceled(): break
main.VIEWS()
示例3: VIKIGENREM
def VIKIGENREM(murl):
if murl == 'genre':
html = main.OPENURL('http://www.viki.com/movies/browse')
link=main.unescapes(html).decode('ascii', 'ignore')
match = re.findall('(?sim)<li title=""><a class="" href="(/movies/browse.?genre=[^"]+)">([^<]+)</a></li>',link.replace(' ',''))
for url, name in match:
main.addDir(name,MainUrl+url,483,art+'/dramania.png')
elif murl == 'country':
html = main.OPENURL('http://www.viki.com/movies/browse')
link=main.unescapes(html).decode('ascii', 'ignore')
match = re.findall('(?sim)<li title=""><a class="" href="(/movies/browse.?country=[^"]+)">([^<]+)</a></li>',link.replace(' ',''))
for url, name in match:
main.addDir(name,MainUrl+url,483,art+'/dramania.png')
elif murl == 'genreT':
html = main.OPENURL('http://www.viki.com/tv/browse')
link=main.unescapes(html).decode('ascii', 'ignore')
match = re.findall('(?sim)<li title=""><a class="" href="(/tv/browse.?genre=[^"]+)">([^<]+)</a></li>',link.replace(' ',''))
for url, name in match:
main.addDir(name,MainUrl+url,480,art+'/dramania.png')
elif murl == 'countryT':
html = main.OPENURL('http://www.viki.com/tv/browse')
link=main.unescapes(html).decode('ascii', 'ignore')
match = re.findall('(?sim)<li title=""><a class="" href="(/tv/browse.?country=[^"]+)">([^<]+)</a></li>',link.replace(' ',''))
for url, name in match:
main.addDir(name,MainUrl+url,480,art+'/dramania.png')
示例4: LIST3
def LIST3(murl):
link=main.OPENURL(murl)
link=main.unescapes(link)
match = re.compile("""<a title="([^<]+)" target="" rel=".+? href="(.+?)"><img src=".+?onerror=".+?altVideoThumbnail.?this, '(.+?)'.?"></a>.+?<p class="ez-desc">(.+?)</p>""").findall(link)
for name,url,thumb,desc in match:
thumb=thumb.replace(' ','%20')
main.addPlayMs(name,url,220,thumb,desc,'','','','')
paginate = re.compile("""href="javascript:window.location='(.+?)';" class=".+?">Next</a><a title=".+?" rel=".+?" onclick=".+?""").findall(link)
if len(paginate)>0:
paginates=main.unescapes(paginate[0])
main.addDir('Next',paginates,221,art+'/next2.png')
示例5: AZLIST
def AZLIST(mname,murl):
if mname=='#':
link=main.OPENURL(murl)
link=main.unescapes(link)
match = re.compile('<li><a href="([^<]+)">(.+?)</a></li>').findall(link)
for url, name in match[0:10]:
main.addDirT(name,'http://www.animefreak.tv/'+url,626,'','','','','','')
else:
link=main.OPENURL(murl)
link=main.unescapes(link)
match = re.compile('<li><a href="([^<]+)">(.+?)</a></li>').findall(link)
for url, name in match:
if name[0]==mname or name[0]==mname.lower():
main.addDirT(name,'http://www.animefreak.tv/'+url,626,'','','','','','')
示例6: SEARCHNEW
def SEARCHNEW(mname,murl):
if murl == 'movieNEW':
encode = main.updateSearchFile(mname,'Movies','Search')
if not encode: return False
surl='http://myvideolinks.me/?s='+encode
link=main.OPENURL(surl)
link=main.unescapes(link)
match=re.compile(pattern).findall(link)
if match:
for url,thumb,name in match:
name=main.CleanTitle(name)
if not re.findall('HDTV',name):
main.addDirM(name,url,35,thumb,'','','','','')
elif murl == 'tvNEW':
encode = main.updateSearchFile(mname,'TV','Search')
if not encode: return False
surl='http://tv.myvideolinks.eu/?s='+encode
link=main.OPENURL(surl)
link=main.unescapes(link)
match=re.compile(pattern).findall(link)
if match:
for url,thumb,name in match:
name=main.CleanTitle(name)
main.addDirTE(name,url,35,thumb,'','','','','')
else:
if murl == 'tNEW':
encode = mname.replace(' ','+')
surl='http://tv.myvideolinks.eu/?s='+encode
link=main.OPENURL(surl)
link=main.unescapes(link)
match=re.compile(pattern).findall(link)
if match:
for url,thumb,name in match:
name=main.CleanTitle(name)
main.addDirTE(name,url,35,thumb,'','','','','')
elif murl == 'mNEW':
encode = mname.replace(' ','+')
surl='http://myvideolinks.me/?s='+encode
link=main.OPENURL(surl)
link=main.unescapes(link)
match=re.compile(pattern).findall(link)
if match:
for url,thumb,name in match:
name=main.CleanTitle(name)
if not re.findall('HDTV',name):
main.addDirM(name,url,35,thumb,'','','','','')
main.GA("Newmyvideolinks","Search")
示例7: LIST2
def LIST2(mname,murl,thumb,desc):
main.GA("AnimeFreak","List")
link=main.OPENURL(murl)
link=main.unescapes(link)
match = re.compile("""onClick="javascript:loadParts.?\'(.+?)', \'\'.?" class="multi">(.+?)</a>""").findall(link)
if len(match)==0:
match = re.compile('<iframe .+?src="(.+?)".+?/iframe>').findall(link)
for url in match:
host=re.compile("http://(.+?).?/.+?").findall(url)
for hname in host:
name=hname.replace('www.','').replace('embed.','').replace('.co','').replace('.t','').replace('.e','')
main.addPlayc(mname+' [COLOR red]'+name+'[/COLOR]',url,627,thumb,desc,'','','','')
else:
for url, name in match:
match2 = re.compile('<iframe(.+?)/iframe>').findall(url)
if len(match2)>=2:
for url in match2:
match = re.compile('src="(.+?)"').findall(url)
if len(match)==0:
match = re.compile("src='(.+?)'").findall(url)
for url in match:
host=re.compile("http://(.+?).?/.+?").findall(url)
for hname in host:
name=hname.replace('www.','').replace('embed.','').replace('.co','').replace('.t','').replace('.e','')
main.addPlayc(mname+' [COLOR red]'+name+'[/COLOR]',url,627,thumb,desc,'','','','')
main.addPlayc(mname+' [COLOR red]'+name+'[/COLOR]',url,627,thumb,desc,'','','','')
示例8: LISTMov
def LISTMov(murl):
link = main.OPENURL(murl)
link = link.replace("\r", "").replace("\n", "").replace("\t", "").replace(" ", "").replace("»", "")
match = re.compile(
"""<td width=".+?" valign=".+?" style=".+?<a href="([^<]+)"><img src="(.+?)".+?title="(.+?)" alt=".+?".+?</ul>(.+?)</div>""",
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 url, thumb, name, desc in match:
name = main.unescapes(name)
main.addPlayM(name, url, 338, 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
paginate = re.compile("""<a class="xo-pagarrow" href="([^<]+)"><u></u>""").findall(link)
if len(paginate) > 0:
main.addDir("Next", MAINURL + paginate[0], 341, art + "/next2.png")
main.GA("Aflam1", "List")
示例9: LISTSP
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")
示例10: LINK
def LINK(mname,murl,thumb,desc):
link=main.OPENURL(murl)
link=main.unescapes(link)
ok=True
try:
match=re.compile('src="http://www.youtube.com/embed/(.+?).?autoplay=1&cc_load_policy=0.+?"').findall(link)
if match:
xbmc.executebuiltin("XBMC.Notification(Please Wait!,Opening Link,3000)")
stream_url = "plugin://plugin.video.youtube/?path=/root/video&action=play_video&videoid="+match[0]+"&hd=1"
match2=re.compile('src="http://player.vimeo.com/video/(.+?)"').findall(link)
if match2:
xbmc.executebuiltin("XBMC.Notification(Please Wait!,Resolving Link,3000)")
stream_url = main.resolve_url(str('http://vimeo.com/'+match2[0]))
if(stream_url == False):
xbmc.executebuiltin("XBMC.Notification(Sorry!,Link Cannot Be Resolved,5000)")
return
infoL={'Title': mname, 'Plot': desc}
# play with bookmark
player = playbackengine.PlayWithoutQueueSupport(resolved_url=stream_url, addon_id=addon_id, video_type='', title=mname,season='', episode='', year='',img=thumb,infolabels=infoL, watchedCallbackwithParams=main.WatchedCallbackwithParams,imdb_id='')
#WatchHistory
if selfAddon.getSetting("whistory") == "true":
wh.add_item(mname+' '+'[COLOR green]Doc-Wire[/COLOR]', sys.argv[0]+sys.argv[2], infolabels='', img=thumb, fanart='', is_folder=False)
player.KeepAlive()
return ok
except Exception, e:
if stream_url != False:
main.ErrorReport(e)
else:
xbmc.executebuiltin("XBMC.Notification(Sorry!,Link deleted Or unplayable,5000)")
return ok
示例11: LISTMov
def LISTMov(murl):
link = aflamOPENURL(murl)
link = link.replace("\r", "").replace("\n", "").replace("\t", "").replace(" ", "").replace("»", "")
match = re.compile("""<a href="([^"]+)"><img src="([^"]+)" class=".+?alt="([^"]+)" />""", 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 url, thumb, name in match:
name = main.unescapes(name)
main.addPlayM(name, url, 338, 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 class="nextpostslink" href="([^"]+)">»</a>""").findall(link)
if len(paginate) > 0:
main.addDir("Next", paginate[0], 341, art + "/next2.png")
main.GA("Aflam1", "List")
示例12: NewRelease
def NewRelease(url):
link=main.OPEN_URL(url)
link=main.unescapes(link)
match=re.compile('data-placement=.+?title=".+?href="([^"]*?)"><img src="([^"]*?)" alt="([^"]*?)"><div class="well-sx text-center">([^"]*?)<br>([^"]*?)</div></a></div>').findall(link)
if match:
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 url,thumb,epname,name,epinfo in match:
main.addDirTE(name+' -'+epinfo+' '+epname,url,5,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
paginate=re.compile('<a href="(http://couchtuner.at/page/[^"]*?)">></a></li>').findall(link)
for xurl in paginate:
main.addDir('[COLOR blue]Next Page >'+'[/COLOR]',xurl,1,art+'/next2.png','')
示例13: ListSceneLogLinks
def ListSceneLogLinks(mname,url):
html = main.OPENURL(url)
html = main.unescapes(html)
if selfAddon.getSetting("hide-download-instructions") != "true":
main.addLink("[COLOR red]For Download Options, Bring up Context Menu Over Selected Link.[/COLOR]",'','')
paragraphs = re.compile('<p>.*?</p>',re.I|re.DOTALL).findall(html)
itemsAdded = 0
from urlparse import urlparse
for paragraph in paragraphs:
links = re.compile('<a[\s]*?href="(.*?)"',re.I|re.DOTALL).findall(paragraph)
if len(links) == 1: # if more than 1 links per paragraph, its probably splitted file
for url in links:
if not re.search('rar',url,re.I):
host = urlparse(url).hostname.replace('www.','').partition('.')[0]
if main.supportedHost(host):
title = mname
quality = re.search('(?i)(720p|1080p|HDTV|PDTV|WEB DL|DVDRIP|WS DSR|DSR|BDRip|WEBRiP)',url,re.I)
if quality and not quality.group(1).lower() in mname.lower() :
title = re.sub('\[COLOR.*?\[/COLOR\]','',title).strip()
title += ' [COLOR red]'+quality.group(1).upper()+'[/COLOR]'
host = re.sub('^(https?://)?[^/]*?([^/^.]+?)\.\w+?/.*','\\2',url).upper()
thumb = host.lower()
main.addDown2(title+' [COLOR blue]'+host+'[/COLOR]',url,658,art+'/hosts/'+thumb+".png",art+'/hosts/'+thumb+".png")
itemsAdded += 1
if not itemsAdded:
xbmcplugin.endOfDirectory(int(sys.argv[1]), False, False)
xbmc.executebuiltin("XBMC.Notification(Sorry,No sources found!,3000)")
示例14: LINKSP2
def LINKSP2(mname,url):
link=main.OPENURL(url)
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]",'','')
match0=re.compile('title="[^"]+?">([^"]+?)</a>.+?</p><ul>(.+?)</ul>').findall(link)
if not match0:
match0=re.compile('<h4>(.+?)</h4>(.+?)</ul>').findall(link)
if not match0:
match0=re.compile('<p><img src=".+?" alt="([^"]+?)" /></p>.+?<ul>(.+?)</ul>').findall(link)
for mname, links in reversed(match0):
match1=re.compile('<li><a href="([^"]+?)"[^>]*?><img [^>]*?alt="([^"]+?)"[^>]*?></a></li>').findall(links)
match= match1 + re.compile('<li><a href="([^"]+?)"[^>]*?>([^>]+?)</a></li>').findall(links)
filename = False
for murl, name in match:
fn = re.search('/([^/]+?\.(mkv|avi|mp4))(\.html)?$',murl)
if fn:
filename = fn.group(1)
break
for murl, name in match:
name = name[0].upper() + name[1:]
if main.supportedHost(name):
thumb=name.lower()
# if re.search('billionuploads',murl) and filename: murl += '#@#' + filename
main.addDown2(main.CleanTitle(mname)+' [COLOR blue]'+name+'[/COLOR]',murl,209,art+'/hosts/'+thumb+".png",art+'/hosts/'+thumb+".png")
示例15: LAST_AIRED
def LAST_AIRED(url):
html = main.OPENURL2(url)
if html == None:
return
r = re.findall(
r"Last Aired TV Shows/Episodes</div>(.+?)«Browse all latest TV Episodes»", 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:
if len(season) == 1:
season = "0" + season
if len(episode) == 1:
episode = "0" + episode
name = name.replace("_", " ")
if ":" in name:
name = re.findall("(.+?)\:", name)[0]
name = name.strip() + " S" + season + "E" + episode
name = main.unescapes(name)
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()