fix parziale tantifilm e fix guardaserie cam/icu in libreria
This commit is contained in:
+39
-15
@@ -20,6 +20,7 @@ def findhost():
|
||||
host = config.get_channel_url(findhost)
|
||||
headers = [['Referer', host]]
|
||||
|
||||
player_iframe = r'<iframe src="([^"]+)"[^>]+></iframe>\s?<div class="player'
|
||||
|
||||
@support.menu
|
||||
def mainlist(item):
|
||||
@@ -53,7 +54,7 @@ def peliculas(item):
|
||||
# support.regexDbg(item, patron, headers)
|
||||
else:
|
||||
patronNext = r'<a class="nextpostslink" rel="next" href="([^"]+)">'
|
||||
patron = r'<div class="mediaWrap mediaWrapAlt">\s*<a href="(?P<url>[^"]+)"(?:[^>]+>)>?\s*<img[^s]+src="([^"]+)"[^>]+>\s*<\/a>[^>]+>[^>]+>[^>]+>(?P<title>.+?)(?P<lang>[sSuUbB\-iItTaA]+)?(?:[ ]?\((?P<year>\d{4})-?(?:\d{4})?)\).[^<]+[^>]+><\/a>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>\s*(?P<quality>[a-zA-Z-0-9\.]+)'
|
||||
patron = r'<div class="mediaWrap mediaWrapAlt">\s*<a href="(?P<url>[^"]+)"(?:[^>]+)?>?\s*<img[^s]+src="([^"]+)"[^>]+>\s*<\/a>[^>]+>[^>]+>[^>]+>(?P<title>.+?)(?P<lang>[sSuUbB\-iItTaA]+)?(?:[ ]?\((?P<year>\d{4})-?(?:\d{4})?)\).[^<]+[^>]+><\/a>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>\s*(?P<quality>[a-zA-Z-0-9\.]+)'
|
||||
patronBlock = r'<div id="main_col">(?P<block>.*?)<!\-\- main_col \-\->'
|
||||
|
||||
# if item.args != 'all' and item.args != 'search':
|
||||
@@ -72,20 +73,20 @@ def episodios(item):
|
||||
data_check = re.sub(r'>\s+<', '> <', data_check)
|
||||
else:
|
||||
data_check = item.data
|
||||
patron_check = r'<iframe src="([^"]+)"'
|
||||
data = httptools.downloadpage(scrapertools.find_single_match(data_check, patron_check), headers=headers).data
|
||||
data = httptools.downloadpage(scrapertools.find_single_match(data_check, player_iframe), headers=headers).data
|
||||
data = data.replace("'", '"')
|
||||
data = re.sub('\n|\t', ' ', data)
|
||||
data = re.sub(r'>\s+<', '> <', data)
|
||||
|
||||
patronBlock = r'Stagioni<\/a>.*?<ul class="nav navbar-nav">(?P<block>.*?)<\/ul>'
|
||||
patron = r'<a href="(?P<url>[^"]+)"\s*>\s*<i[^>]+><\/i>\s*(?P<episode>\d+)<\/a>'
|
||||
# debug = True
|
||||
# debugBlock = True
|
||||
|
||||
otherLinks = support.match(data_check, patronBlock='<div class="content-left-film">.*?Keywords', patron='([0-9]+)(?:×|x)([0-9]+(?:-[0-9]+)?)(.*?)(?:<br|$)').matches
|
||||
|
||||
def itemlistHook(itemlist):
|
||||
retItemlist = []
|
||||
|
||||
for item in itemlist:
|
||||
item.contentType = 'episode'
|
||||
|
||||
@@ -93,8 +94,8 @@ def episodios(item):
|
||||
season_data = httptools.downloadpage(item.url).data
|
||||
season_data = re.sub('\n|\t', ' ', season_data)
|
||||
season_data = re.sub(r'>\s+<', '> <', season_data)
|
||||
block = scrapertools.find_single_match(season_data, 'Episodi.*?<ul class="nav navbar-nav">(.*?)</ul>')
|
||||
episodes = scrapertools.find_multiple_matches(block, '<a href="([^"]+)"\s*>\s*<i[^>]+><\/i>\s*(\d+)<\/a>')
|
||||
# block = scrapertools.find_single_match(season_data, 'Episodi.*?<ul class="nav navbar-nav">(.*?)</ul>')
|
||||
episodes = scrapertools.find_multiple_matches(season_data, '<a.*?href="(?P<url>[^"]+)"[^>]+>Episodio (?P<episode>[0-9]+)(?::\s*(?P<title2>[^<]+))?')
|
||||
for url, episode in episodes:
|
||||
i = item.clone()
|
||||
i.action = 'findvideos'
|
||||
@@ -110,7 +111,7 @@ def episodios(item):
|
||||
retItemlist.sort(key=lambda e: (int(e.contentSeason), int(e.contentEpisodeNumber)))
|
||||
return retItemlist
|
||||
|
||||
#debug = True
|
||||
# debugBlock = True
|
||||
return locals()
|
||||
|
||||
|
||||
@@ -153,10 +154,20 @@ def newest(categoria):
|
||||
return locals()
|
||||
|
||||
|
||||
@support.scrape
|
||||
def hdpass(item):
|
||||
patronBlock = r'<ul class="nav navbar-nav">(?P<block>.*?)</ul>'
|
||||
patron = r'<a.*?href="(?P<url>[^"]+)">'
|
||||
|
||||
def itemHook(item):
|
||||
url = support.match(item.url, patron='<iframe.*?src="([^"]+)').match
|
||||
return Item(url=url)
|
||||
|
||||
return locals()
|
||||
|
||||
|
||||
def findvideos(item):
|
||||
log()
|
||||
listurl = set()
|
||||
itemlist = []
|
||||
support.log("ITEMLIST: ", item)
|
||||
data = support.match(item.url, headers=headers).data
|
||||
check = support.match(data, patron=r'<div class="category-film">(.*?)</div>').match
|
||||
@@ -190,11 +201,24 @@ def findvideos(item):
|
||||
# listurl.add(url)
|
||||
# data += '\n'.join(listurl)
|
||||
log(data)
|
||||
urls = support.match(data, patron=r'<iframe.*?src="([^"]+)"').matches
|
||||
if item.otherLinks:
|
||||
urls += support.match(item.otherLinks, patron=r'href="([^"]+)').matches
|
||||
log('URLS',urls)
|
||||
itemlist = []
|
||||
# support.dbg()
|
||||
|
||||
itemlist = support.server(item, urls)
|
||||
support.addQualityTag(item, itemlist, data, 'Keywords:\s*(?:<span>)?([^<]+)')
|
||||
if '/serietv/series/names' in item.url:
|
||||
itemlist.extend(support.server(item, itemlist=hdpass(Item(url=item.url))))
|
||||
else:
|
||||
urls = support.match(data, patron=player_iframe).matches
|
||||
# support.dbg()
|
||||
if item.otherLinks:
|
||||
urls += support.match(item.otherLinks, patron=r'href="([^"]+)').matches
|
||||
|
||||
log('URLS', urls)
|
||||
for u in urls:
|
||||
if 'hdplayer.casa/series/' in u:
|
||||
urls.remove(u)
|
||||
itemlist.extend(support.server(item, itemlist=hdpass(Item(url=u))))
|
||||
break
|
||||
else:
|
||||
itemlist.extend(support.server(item, urls))
|
||||
support.addQualityTag(item, itemlist, data, 'Keywords:\s*(?:<span>)?([^<]+)')
|
||||
return itemlist
|
||||
|
||||
Reference in New Issue
Block a user