From 5e14d4d15653f49fa4052b959c51bc900c0f6038 Mon Sep 17 00:00:00 2001 From: marco Date: Tue, 31 Dec 2019 12:36:01 +0100 Subject: [PATCH] fix tantiflm, url fembed (tantifilmHD), nuovo server hdplayer e tentativo iniziale fix mystream --- channels/tantifilm.py | 15 ++++++--------- servers/fembed.json | 4 ++++ servers/hdplayer.json | 42 ++++++++++++++++++++++++++++++++++++++++++ servers/hdplayer.py | 18 ++++++++++++++++++ servers/mystream.json | 8 ++++++++ servers/mystream.py | 6 ++++++ 6 files changed, 84 insertions(+), 9 deletions(-) create mode 100644 servers/hdplayer.json create mode 100644 servers/hdplayer.py diff --git a/channels/tantifilm.py b/channels/tantifilm.py index 92929123..f2c3c796 100644 --- a/channels/tantifilm.py +++ b/channels/tantifilm.py @@ -5,16 +5,13 @@ import re -import urlparse - -from core import scrapertoolsV2, httptools, tmdb, support,servertools +from core import scrapertoolsV2, httptools, tmdb, support from core.item import Item -from core.support import menu, log +from core.support import log from platformcode import logger from specials import autorenumber from platformcode import config, unify from lib.unshortenit import unshorten_only -from lib import unshortenit host = 'https://www.tantifilm.eu' headers = '' @@ -274,10 +271,10 @@ def findvideos(item): if 'nodmca' in url: page = httptools.downloadpage(url, headers=headers).data url = '\t' + scrapertoolsV2.find_single_match(page,'') - if url: - listurl.add(url) - support.dbg() - return support.server(item, data=listurl if listurl else data)#, headers=headers) + if url: + listurl.add(url) + data += '\n'.join(listurl) + return support.server(item, data) # , headers=headers) # return itemlist ##def findvideos(item): diff --git a/servers/fembed.json b/servers/fembed.json index 614826c6..e0157bfd 100644 --- a/servers/fembed.json +++ b/servers/fembed.json @@ -6,6 +6,10 @@ { "pattern": "((?:fembed|divload|cercafilm|sonline).(?:com|net|pro)/(?:f|v)/[A-z0-9_-]+)", "url": "https://www.\\1" + }, + { + "pattern": "(verystream.info/v/[A-z0-9_-]+)", + "url": "https://www.\\1" } ] }, diff --git a/servers/hdplayer.json b/servers/hdplayer.json new file mode 100644 index 00000000..070aa43f --- /dev/null +++ b/servers/hdplayer.json @@ -0,0 +1,42 @@ +{ + "active": true, + "find_videos": { + "ignore_urls": [], + "patterns": [ + { + "pattern": "https://hdplayer\\.casa//public/dist/index\\.html\\?id=([a-z0-9]+)", + "url": "https://hdplayer.casa/public/dist/index.html?id=\\1" + } + ] + }, + "free": true, + "id": "hdplayer", + "name": "HDPlayer", + "settings": [ + { + "default": false, + "enabled": true, + "id": "black_list", + "label": "@60654", + "type": "bool", + "visible": true + }, + { + "default": 0, + "enabled": true, + "id": "favorites_servers_list", + "label": "@60655", + "lvalues": [ + "No", + "1", + "2", + "3", + "4", + "5" + ], + "type": "list", + "visible": false + } + ], + "thumbnail": "server_hdload" +} diff --git a/servers/hdplayer.py b/servers/hdplayer.py new file mode 100644 index 00000000..258e7b2f --- /dev/null +++ b/servers/hdplayer.py @@ -0,0 +1,18 @@ +from core import httptools +from core import scrapertools +from platformcode import config + + +def test_video_exists(page_url): + stream_url = get_stream_url(page_url) + data = httptools.downloadpage(stream_url).data + if "Error Playlist" in data: + return False, config.get_localized_string(70449) % "HDPlayer" + return True, "" + +def get_stream_url(url): + id = scrapertools.find_single_match(url, 'id=([a-z0-9]+)') + return 'https://hdplayer.casa/hls/' + id + '/' + id + '.playlist.m3u8' + +def get_video_url(page_url, premium=False, user="", password="", video_password=""): + return [('.m3u8', get_stream_url(page_url))] diff --git a/servers/mystream.json b/servers/mystream.json index 177f7611..310dbe3e 100644 --- a/servers/mystream.json +++ b/servers/mystream.json @@ -6,6 +6,14 @@ { "pattern": "https://embed.mystream.to/(\\w+)", "url": "https://embed.mystream.to/\\1" + }, + { + "pattern": "https://mystream\\.premiumserver\\.club/(\\w+)", + "url": "https://embed.mystream.to/\\1" + }, + { + "pattern": "https://mstream\\.(?:xyz|icu)/(\\w+)", + "url": "https://embed.mystream.to/\\1" } ] }, diff --git a/servers/mystream.py b/servers/mystream.py index bfabfbdf..e1f97e0e 100644 --- a/servers/mystream.py +++ b/servers/mystream.py @@ -7,6 +7,7 @@ import re from core import httptools from core import scrapertools +from lib import js2py from lib.aadecode import decode as aadecode from platformcode import logger @@ -27,6 +28,11 @@ def get_video_url(page_url, premium = False, user = "", password = "", video_pas headers = {'referer': page_url} data = httptools.downloadpage(page_url, headers=headers).data data = re.sub(r'"|\n|\r|\t| |
|\s{2,}', "", data) + for c in scrapertools.find_multiple_matches(data, ''): + if 'function vv' in c: + vv = js2py.eval_js(c) + if 'key' in c: + key = js2py.eval_js(c) code = scrapertools.find_single_match(data, '(?s)').strip() text_decode = aadecode(code) matches = scrapertools.find_multiple_matches(text_decode, "'src', '([^']+)'")