- (.*?)
- .*?(.*?)
([^<]+)
.*?' + patron += r']+> (.*?)<\/p>'
+ matches = re.compile(patron, re.DOTALL).findall(data)
+
+ for i, (scrapedurl, scrapedtitle, scrapedthumbnail, scrapedplot) in enumerate(matches):
+ if (p - 1) * minpage > i: continue
+ if i >= p * minpage: break
+ scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle)
+
+ itemlist.append(
+ Item(channel=channel,
+ action="episodios",
+ contentType="episode",
+ title=scrapedtitle,
+ fulltitle=scrapedtitle,
+ url=scrapedurl,
+ show=scrapedtitle,
+ thumbnail=scrapedthumbnail,
+ plot=scrapedplot,
+ folder=True))
+
+ if len(matches) >= p * minpage:
+ scrapedurl = item.url + '{}' + str(p + 1)
+ itemlist.append(
+ Item(channel=channel,
+ args=item.args,
+ action="insert",
+ title="[COLOR blue][B]Successivo >[/B][/COLOR]",
+ url=scrapedurl,
+ thumbnail="thumb_next.png",
+ folder=True))
+
+ tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
+ return itemlist
+
+#----------------------------------------------------------------------------------------------------------------------------------------------
+
+def updates(item):
+ logger.info("[toonitalia.py] updates")
+ itemlist = []
+
+ data = httptools.downloadpage(item.url, headers=headers).data
+
+ blocco = r'Aggiornamenti(.*?)'
+ matches = re.compile(blocco, re.DOTALL).findall(data)
+ for scrapedurl in matches:
+ blocco = scrapedurl
+
+ patron = r'(.*?)'
+ matches = re.compile(patron, re.DOTALL).findall(blocco)
+
+ for scrapedurl, scrapedtitle in matches:
+ scrapedplot = ""
+ scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle)
+ itemlist.append(
+ Item(channel=channel,
+ action="episodios",
+ contentType="episode",
+ title=scrapedtitle,
+ fulltitle=scrapedtitle,
+ url=scrapedurl,
+ show=scrapedtitle,
+ plot=scrapedplot))
+
+ tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
+ return itemlist
+
+#----------------------------------------------------------------------------------------------------------------------------------------------
+
+def most_view(item):
+ logger.info("[toonitalia.py] most_view")
+ itemlist = []
+
+ data = httptools.downloadpage(item.url, headers=headers).data
+
+ blocco = r'I piu visti(.*?)'
+ matches = re.compile(blocco, re.DOTALL).findall(data)
+ for scrapedurl in matches:
+ blocco = scrapedurl
+
+ patron = r'([^<]+)'
+ matches = re.compile(patron, re.DOTALL).findall(blocco)
+
+ for scrapedurl, scrapedtitle in matches:
+ scrapedplot = ""
+ scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle)
+ itemlist.append(
+ Item(channel=channel,
+ action="episodios",
+ contentType="episode",
+ title=scrapedtitle,
+ fulltitle=scrapedtitle,
+ url=scrapedurl,
+ show=scrapedtitle,
+ plot=scrapedplot))
+
+ tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
+ return itemlist
+
+#----------------------------------------------------------------------------------------------------------------------------------------------
+
+def list(item):
+ logger.info("[toonitalia.py] list")
+ itemlist = []
+ minpage = 14
+
+ p = 1
+ if '{}' in item.url:
+ item.url, p = item.url.split('{}')
+ p = int(p)
+
+ data = httptools.downloadpage(item.url, headers=headers).data
+
+ patron = r' ([^<]+)]+src="([^"]+)" class[^>]+>.*?'
+ patron += r'
([^<]+)
.*?
]+>([^<]+)'
+ matches = re.compile(patron, re.DOTALL).findall(data)
+
+ for scrapedurl, scrapedtitle in matches:
+ if 'Wikipedia' not in scrapedurl:
+ scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle).replace("×", "x")
+ scrapedtitle = scrapedtitle.replace("_", " ")
+ scrapedtitle = scrapedtitle.replace(".mp4", "")
+ puntata = scrapertools.find_single_match(scrapedtitle, '[0-9]+x[0-9]+')
+ for i in itemlist:
+ if i.args == puntata: #è già stata aggiunta
+ i.url += " " + scrapedurl
+ break
+
+ else:
+ itemlist.append(
+ Item(channel=channel,
+ action="findvideos",
+ contentType=item.contentType,
+ title="[COLOR azure]" + scrapedtitle + "[/COLOR]",
+ thumbnail=item.thumbnail,
+ fulltitle=scrapedtitle,
+ url=scrapedurl,
+ args = puntata,
+ show=item.show,
+ plot=item.plot))
+
+ support.videolibrary(itemlist, item, 'color kod')
+
+ return itemlist
+
+#----------------------------------------------------------------------------------------------------------------------------------------------
+
+def search(item, texto):
+ logger.info("[toonitalia.py] " + item.url + " search " + texto)
+ item.url = host + "/?s=" + texto
+ try:
+ return peliculas(item)
+
+ except:
+ import sys
+ for line in sys.exc_info():
+ logger.error("%s" % line)
+ return []
+
+#----------------------------------------------------------------------------------------------------------------------------------------------
+
+def findvideos(item):
+ logger.info("[toonitalia.py] findvideos")
+
+ if item.args == 'film':
+ data = httptools.downloadpage(item.url, headers=headers).data
+ itemlist = servertools.find_video_items(data=data)
+
+ for videoitem in itemlist:
+ videoitem.channel = channel
+ server = re.sub(r'[-\[\]\s]+', '', videoitem.title)
+ videoitem.title = "".join(['[COLOR blue] ' + "[[B]" + server + "[/B]][/COLOR] " + item.title])
+ videoitem.thumbnail = item.thumbnail
+ videoitem.plot = item.plot
+ videoitem.fulltitle = item.fulltitle
+ videoitem.show = item.show
+
+ else:
+ itemlist = servertools.find_video_items(data=item.url)
+
+ for videoitem in itemlist:
+ videoitem.channel = channel
+ server = re.sub(r'[-\[\]\s]+', '', videoitem.title)
+ videoitem.title = "".join(['[COLOR blue] ' + "[[B]" + server + "[/B]] " + item.title + '[/COLOR]'])
+ videoitem.thumbnail = item.thumbnail
+ videoitem.plot = item.plot
+ videoitem.fulltitle = item.fulltitle
+ videoitem.show = item.show
+
+ autoplay.start(itemlist, item)
+
+ return itemlist
diff --git a/resources/media/channels/thumb/documentaristreamingda.png b/resources/media/channels/thumb/documentaristreamingda.png
new file mode 100644
index 00000000..c9342c90
Binary files /dev/null and b/resources/media/channels/thumb/documentaristreamingda.png differ
diff --git a/resources/media/channels/thumb/filmigratis.png b/resources/media/channels/thumb/filmigratis.png
new file mode 100644
index 00000000..d623d0b6
Binary files /dev/null and b/resources/media/channels/thumb/filmigratis.png differ
diff --git a/resources/media/channels/thumb/toonitalia.png b/resources/media/channels/thumb/toonitalia.png
new file mode 100644
index 00000000..15c31ab6
Binary files /dev/null and b/resources/media/channels/thumb/toonitalia.png differ
diff --git a/servers/upvid.json b/servers/upvid.json
index 13c77fe0..1c237a48 100644
--- a/servers/upvid.json
+++ b/servers/upvid.json
@@ -4,8 +4,8 @@
"ignore_urls": [],
"patterns": [
{
- "pattern": "https://upvid.co/embed-([a-z0-9]+).html",
- "url": "https://upvid.co/embed-\\1.html"
+ "pattern": "upvid.(?:co|live)/(?:embed-)?([a-z0-9]+).html",
+ "url": "https://upvid.live/\\1.html"
}
]
},
diff --git a/servers/upvid.py b/servers/upvid.py
index 1e6f13c5..2a13afa8 100644
--- a/servers/upvid.py
+++ b/servers/upvid.py
@@ -29,7 +29,7 @@ def get_video_url(page_url, premium = False, user = "", password = "", video_pas
if '゚ω゚ノ' in data:
break
else:
- page_url = scrapertools.find_single_match(data, '"iframe" src="([^"]+)')
+ page_url = scrapertools.find_single_match(data, '\'