diff --git a/plugin.video.alfa/.dev b/plugin.video.alfa/.dev new file mode 100644 index 00000000..8d1c8b69 --- /dev/null +++ b/plugin.video.alfa/.dev @@ -0,0 +1 @@ + diff --git a/plugin.video.alfa/channels/italiaserie.py b/plugin.video.alfa/channels/italiaserie.py index 0c94e5d9..630d89ca 100644 --- a/plugin.video.alfa/channels/italiaserie.py +++ b/plugin.video.alfa/channels/italiaserie.py @@ -144,7 +144,7 @@ def episodios(item): eptitle = re.sub(r"Episodio\s+\d+", "", scrapedtitle).strip() itemlist.append( Item(channel=item.channel, - action="episodios", + action="findvideos", contentType=item.contentType, title="[B]" + fixedtitle + " " + eptitle + "[/B]", fulltitle=fixedtitle + " " + eptitle, diff --git a/plugin.video.alfa/channels/streamingaltadefinizione.json b/plugin.video.alfa/channels/streamingaltadefinizione.json new file mode 100644 index 00000000..1cca3246 --- /dev/null +++ b/plugin.video.alfa/channels/streamingaltadefinizione.json @@ -0,0 +1,19 @@ +{ + "id": "streamingaltadefinizione", + "name": "Streaming Altadefinizione", + "language": ["ita"], + "active": true, + "adult": false, + "thumbnail": "https://www.streamingaltadefinizione.world/wp-content/uploads/2018/09/StreamingAltadefinizioneLogo.png", + "categories": ["movie","tvshow","anime"], + "settings": [ + { + "id": "include_in_global_search", + "type": "bool", + "label": "Includi in Ricerca Globale", + "default": true, + "enabled": true, + "visible": true + } + ] +} diff --git a/plugin.video.alfa/channels/streamingaltadefinizione.py b/plugin.video.alfa/channels/streamingaltadefinizione.py new file mode 100644 index 00000000..c6efc954 --- /dev/null +++ b/plugin.video.alfa/channels/streamingaltadefinizione.py @@ -0,0 +1,68 @@ +from channels import support, autoplay +from core.item import Item + +host = 'https://www.streamingaltadefinizione.world/' + +list_servers = ['openload', 'wstream'] +list_quality = ['1080p', 'HD', 'DVDRIP', 'SD', 'CAM'] + +def mainlist(item): + support.log() + itemlist = [] + + support.menu(itemlist, 'Film', 'peliculas', host + "/film/") + support.menu(itemlist, 'Film Anime', 'peliculas', host + "/genere/anime/") + support.menu(itemlist, 'Film per genere', 'generos', host) + support.menu(itemlist, 'Serie TV', 'peliculas', host + "/serietv/", contentType='tvshow') + support.menu(itemlist, 'Anime', 'peliculas', host + "/genere/anime/", contentType='tvshow') + support.menu(itemlist, 'Cerca film', 'search', host) + support.menu(itemlist, 'Cerca serie tv', 'search', host, contentType='tvshow') + + autoplay.init(item.channel, list_servers, list_quality) + autoplay.show_option(item.channel, itemlist) + + return itemlist + + +def search(item, text): + support.log("[streamingaltadefinizione.py] " + item.url + " search " + text) + item.url = item.url + "/?s=" + text + + return support.dooplay_search(item) + + +def generos(item): + patron = '([a-zA-Z]+)' + return support.scrape(item, patron, ['url', 'title'], patron_block='Genere
', action='peliculas') + + +def peliculas(item): + support.log("[streamingaltadefinizione.py] video") + + return support.dooplay_films(item) + + +def episodios(item): + return support.dooplay_get_episodes(item) + + +def findvideos(item): + itemlist = [] + for link in support.dooplay_get_links(item, host): + server = link['server'][:link['server'].find(".")] + itemlist.append( + Item(channel=item.channel, + action="play", + title=server + " [COLOR blue][" + link['title'] + "][/COLOR]", + url=link['url'], + server=server, + fulltitle=item.fulltitle, + thumbnail=item.thumbnail, + show=item.show, + quality=link['title'], + contentType=item.contentType, + folder=False)) + + autoplay.start(itemlist, item) + + return itemlist \ No newline at end of file diff --git a/plugin.video.alfa/channels/support.py b/plugin.video.alfa/channels/support.py index 373b302d..3e89b528 100644 --- a/plugin.video.alfa/channels/support.py +++ b/plugin.video.alfa/channels/support.py @@ -86,7 +86,7 @@ def color(text, color): def scrape(item, patron = '', listGroups = [], headers="", blacklist="", data="", patron_block="", - patronNext="", action="findvideos", url_host=""): + patronNext="", action="findvideos", url_host="", addVideolibrary = True): # patron: the patron to use for scraping page, all capturing group must match with listGroups # listGroups: a list containing the scraping info obtained by your patron, in order # accepted values are: url, title, thumb, quality, year, plot, duration, genre, rating @@ -199,7 +199,7 @@ def scrape(item, patron = '', listGroups = [], headers="", blacklist="", data="" if patronNext: nextPage(itemlist, item, data, patronNext, 2) - if item.infoLabels["title"] or item.fulltitle: + if addVideolibrary and (item.infoLabels["title"] or item.fulltitle): item.fulltitle = item.infoLabels["title"] videolibrary(itemlist, item) @@ -234,16 +234,60 @@ def dooplay_get_links(item, host): return ret +def dooplay_get_episodes(item): + itemlist = [] + item.contentType = "episode" + data = httptools.downloadpage(item.url).data.replace("'", '"') + patron = '