(?P
(.*?)<\/p>.*?')
- infoLabels = {}
- for infoLabels['year'], duration, scrapedplot, checkUrl in info:
- if checkUrl == scrapedurl:
- break
-
- infoLabels['duration'] = int(duration.replace(' min', '')) * 60 # calcolo la durata in secondi
- scrapedthumbnail = host + scrapedthumbnail
- scrapedtitle = scrapertoolsV2.decodeHtmlentities(scrapedtitle)
- fulltitle = scrapedtitle
- if subDiv:
- fulltitle += support.typo(subText + ' _ () color limegreen')
- fulltitle += support.typo(scrapedquality.strip()+ ' _ [] color kod')
-
- itemlist.append(
- Item(channel=item.channel,
- action="findvideos",
- contentType=item.contenType,
- contentTitle=scrapedtitle,
- contentQuality=scrapedquality.strip(),
- plot=scrapedplot,
- title=fulltitle,
- fulltitle=scrapedtitle,
- show=scrapedtitle,
- url=scrapedurl,
- infoLabels=infoLabels,
- thumbnail=scrapedthumbnail))
-
- tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
- support.nextPage(itemlist,item,data,'[^<]+[^<]+')
-
- return itemlist
-
-def peliculas_list(item):
- support.log()
- item.fulltitle = ''
- block = r'(.*)<\/tbody>'
- patron = r' (.*?) (?P.(.*?)
..*?<.*?src="(?P
(.*?)
'
- elif item.args[1] == 'years':
- bloque = r'(.*?)
'
- elif item.args[1] == 'orderalf':
- bloque = r'(.*?)
'
+ patron = '(.*?)
'
+ patron = '(.*?)<.*?"mlnh-5">.<(.*?) (.*?)<.*?"mlnh-5">.<(.*?) [^<]+[^<]+'
-
- itemlist = support.scrape(item, patron=patron, listGroups=listGroups,
- headers= headers, patronNext=patronNext,
- action='findvideos')
+ support.log('orderalf',item)
- return itemlist
+ action= 'findvideos'
+ patron = r' [^"]+)"'\
+ '.+?[^>]+>[^>]+ [^>]+[^>]+ [^>]+>(?P (?P '
+ patronNext = r'[^<]+[^<]+'
+ return locals()
# =========== def pagina del film con i server per verderlo =============
def findvideos(item):
- logger.info("%s mainlist findvideos_film log: %s" % (__channel__, item))
- itemlist = []
+ support.log('findvideos', item)
return support.server(item, headers=headers)
# =========== def per cercare film/serietv =============
@@ -137,7 +104,7 @@ def search(item, text):
itemlist = []
text = text.replace(" ", "+")
item.url = host + "/index.php?do=search&story=%s&subaction=search" % (text)
- #item.extra = "search"
+ item.args = "search"
try:
return peliculas(item)
# Cattura la eccezione così non interrompe la ricerca globle se il canale si rompe!
@@ -150,16 +117,18 @@ def search(item, text):
# =========== def per le novità nel menu principale =============
def newest(categoria):
- logger.info("%s mainlist newest log: %s" % (__channel__, categoria))
+
+ support.log(categoria)
itemlist = []
item = Item()
try:
- item.url = host
- item.action = "peliculas"
- itemlist = peliculas(item)
- if itemlist[-1].action == "peliculas":
- itemlist.pop()
+ if categoria == "peliculas":
+ item.url = host
+ item.action = "peliculas"
+ itemlist = peliculas(item)
+ if itemlist[-1].action == "peliculas":
+ itemlist.pop()
# Continua la ricerca in caso di errore
except:
import sys
@@ -167,4 +136,4 @@ def newest(categoria):
logger.error("{0}".format(line))
return []
- return itemlist
+ return itemlist
\ No newline at end of file
diff --git a/channels/altadefinizione01_link.json b/channels/altadefinizione01_link.json
index 579853b4..610822e4 100644
--- a/channels/altadefinizione01_link.json
+++ b/channels/altadefinizione01_link.json
@@ -4,9 +4,9 @@
"active": true,
"adult": false,
"language": ["ita"],
- "fanart": "https://altadefinizione01.estate/templates/Dark/img/nlogo.png",
- "thumbnail": "https://altadefinizione01.estate/templates/Dark/img/nlogo.png",
- "banner": "https://altadefinizione01.estate/templates/Dark/img/nlogo.png",
+ "fanart": "https://altadefinizione01.tools/templates/Dark/img/nlogo.png",
+ "thumbnail": "https://altadefinizione01.tools/templates/Dark/img/nlogo.png",
+ "banner": "https://altadefinizione01.tools/templates/Dark/img/nlogo.png",
"fix" : "reimpostato url e modificato file per KOD",
"change_date": "2019-30-04",
"categories": [
@@ -18,7 +18,7 @@
"id": "channel_host",
"type": "text",
"label": "Host del canale",
- "default": "https://altadefinizione01.estate/",
+ "default": "https://www.altadefinizione01.tools/",
"enabled": true,
"visible": true
},
diff --git a/channels/altadefinizione01_link.py b/channels/altadefinizione01_link.py
index 584e175b..d45e843f 100644
--- a/channels/altadefinizione01_link.py
+++ b/channels/altadefinizione01_link.py
@@ -2,7 +2,7 @@
# -*- Channel Altadefinizione01L Film - Serie -*-
# -*- By Greko -*-
-import channelselector
+##import channelselector
from specials import autoplay
from core import servertools, support, jsontools
from core.item import Item
@@ -11,88 +11,66 @@ from platformcode import config, logger
__channel__ = "altadefinizione01_link"
# ======== def per utility INIZIO ============================
+host = config.get_setting("channel_host", __channel__)
list_servers = ['supervideo', 'streamcherry','rapidvideo', 'streamango', 'openload']
list_quality = ['default']
-host = config.get_setting("channel_host", __channel__)
-
headers = [['Referer', host]]
# =========== home menu ===================
-
+@support.menu
def mainlist(item):
- """
- Creo il menu principale del canale
- :param item:
- :return: itemlist []
- """
- support.log()
- itemlist = []
- # Menu Principale
- support.menu(itemlist, 'Novità bold', 'peliculas', host)
- support.menu(itemlist, 'Film per Genere', 'genres', host, args='genres')
- support.menu(itemlist, 'Film per Anno submenu', 'genres', host, args='years')
- support.menu(itemlist, 'Film per Qualità submenu', 'genres', host, args='quality')
- support.menu(itemlist, 'Al Cinema bold', 'peliculas', host + '/film-del-cinema')
- support.menu(itemlist, 'Popolari bold', 'peliculas', host + '/piu-visti.html')
- support.menu(itemlist, 'Mi sento fortunato bold', 'genres', host, args='lucky')
- support.menu(itemlist, 'Sub-ITA bold', 'peliculas', host + '/film-sub-ita/')
- support.menu(itemlist, 'Cerca film submenu', 'search', host)
+ film = ''
+ filmSub = [
+ ('Al Cinema', ['/film-del-cinema', 'peliculas']),
+ ('Generi', ['', 'genres', 'genres']),
+ ('Anni', ['', 'genres', 'years']),
+ ('Mi sento fortunato', ['/piu-visti.html', 'genres', 'lucky']),
+ ('Popolari', ['/piu-visti.html', 'peliculas', '']),
+ ('Qualità', ['/piu-visti.html', 'genres', 'quality']),
+ ('Sub-ITA', ['/sub-ita/', 'peliculas'])
+ ]
- # per autoplay
- autoplay.init(item.channel, list_servers, list_quality)
- autoplay.show_option(item.channel, itemlist)
-
- support.channel_config(item, itemlist)
-
- return itemlist
+ return locals()
# ======== def in ordine di action dal menu ===========================
+@support.scrape
def peliculas(item):
- support.log
+ #import web_pdb; web_pdb.set_trace()
+ support.log('peliculas',item)
itemlist = []
- patron = r'class="innerImage">.*?href="([^"]+)".*?src="([^"]+)"'\
- '.*?class="ml-item-title">([^<]+) (\d{4}) <'\
- '.*?class="ml-item-label">.*?class="ml-item-label ml-item-label-.+?"> '\
- '(.+?) .*?class="ml-item-label"> (.+?) '
- listGroups = ['url', 'thumb', 'title', 'year', 'quality', 'lang']
+ patron = r'class="innerImage">.*?href="(?P(.*?)
'
+ patronBlock = r'(.*?)
'
elif item.args == 'years':
- bloque = r'(.*?)
'
+ patronBlock = r'(.*?)
'
elif item.args == 'quality':
- bloque = r'(.*?)
'
+ patronBlock = r'(.*?)
'
elif item.args == 'lucky': # sono i titoli random nella pagina, cambiano 1 volta al dì
- bloque = r'FILM RANDOM.*?class="listSubCat">(.*?)'
+ patronBlock = r'FILM RANDOM.*?class="listSubCat">(.*?)'
action = 'findvideos'
-
- patron = r'(.*?)
'
+
+ return locals()
+
+@support.scrape
+def peliculas(item):
+ support.log()
+ if item.extra == 'search':
+ patron = r'\s*[^"]+)"[^>]+>[^>]+>[^>]+>(?P
[^"]+)[^>]+><\/a>.*?(?P
(.*?)
', action='peliculas')
- return support.thumb(itemlist)
-
-def peliculas(item):
- support.log()
- if item.extra == 'search':
- patron = r'\s*]+>[^>]+>[^>]+>([^<]+)<[^<]+>(?:.*?IMDB:\s([^<]+)<\/div>)?'
- elements = ['url', 'quality', 'thumb', 'title', 'rating']
-
- else:
- patron = r'
]+><\/a>.*?([^(?:\]|<)]+)(?:\[([^\]]+)\])?<\/a>[^>]+>[^>]+>[^>]+>(?:\sIMDB\:\s([^<]+)<)?(?:.*?([^<]+)<\/span>)?\s*([^<]+)<', ['url','title'],patron_block='
(.*?)<\/ul>', action='findvideos')
+ return support.scrape(item, '([^<]+)<', ['url','title'],patronBlock='
(.*?)<\/ul>', action='findvideos')
def newest(categoria):
log('ANIME PER TUTTI')
@@ -83,7 +83,7 @@ def newest(categoria):
return itemlist
def genres(item):
- itemlist = support.scrape(item, '([^<]+)<', ['url', 'title'], action='peliculas', patron_block=r'Generi.*?
(.*?)
'
+ patronBlock = r'\sGeneri(.*?)
'
patron = r''
- return support.scrape(item, patron, ['url','title'], patron_block=patron_block, action='video')
+ return support.scrape(item, patron, ['url','title'], patronBlock=patronBlock, action='video')
# Crea Menu Filtro ======================================================
@@ -118,7 +118,7 @@ def search(item, texto):
# Lista A-Z ====================================================
def alfabetico(item):
- return support.scrape(item, '', ['url', 'title'], patron_block=r'.*?A alla Z.<\/span>.*?(.*?)<\/ul>', action='lista_anime')
+ return support.scrape(item, '', ['url', 'title'], patronBlock=r'.*?A alla Z.<\/span>.*?
(.*?)<\/ul>', action='lista_anime')
def lista_anime(item):
@@ -259,9 +259,10 @@ def video(item):
def episodios(item):
log()
itemlist = []
+
patron_block = r'server active(.*?)server hidden '
patron = r'
]+)(?:\/|")>([^<[(]+)(?:\[([A-Za-z0-9/-]+)])? (?:\(([0-9]{4})\))?.*?([^<>&]+).*?DURATA ([0-9]+).*?
([^<>]+)'
- listGroups = ['thumb', 'url', 'title', 'quality', 'year', 'genre', 'duration', 'plot']
+ patron = r']+)(?:\/|")>(?P
(?P([^<[(]+)<\/a>.*?([^<>0-9(]+)\(([0-9]{4}).*?(?:p|div)>(.*?)
(?P