From c8ffb4a55e35abc8a7c96131cb61f2393d1e5390 Mon Sep 17 00:00:00 2001 From: marco Date: Tue, 26 May 2020 20:30:10 +0200 Subject: [PATCH] fix hdmario --- lib/jsunpack_js2py.py | 10 ++++++++++ servers/drtuber.json | 42 ------------------------------------------ servers/drtuber.py | 22 ---------------------- servers/hdmario.py | 6 ++++-- 4 files changed, 14 insertions(+), 66 deletions(-) create mode 100644 lib/jsunpack_js2py.py delete mode 100644 servers/drtuber.json delete mode 100644 servers/drtuber.py diff --git a/lib/jsunpack_js2py.py b/lib/jsunpack_js2py.py new file mode 100644 index 00000000..2f608572 --- /dev/null +++ b/lib/jsunpack_js2py.py @@ -0,0 +1,10 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals +from lib import js2py +import re + +def unpack(source): + fun, data = re.match("""eval\((function\(p,a,c,k,e,d\){.*?})\((['"].*?)\)\)$""", source.strip(), re.MULTILINE).groups() + funPy = js2py.eval_js(fun) + return eval('funPy(' + data + ')') + diff --git a/servers/drtuber.json b/servers/drtuber.json deleted file mode 100644 index c5dddacf..00000000 --- a/servers/drtuber.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "active": true, - "find_videos": { - "ignore_urls": [], - "patterns": [ - { - "pattern": "http://www.drtuber.com/embed/([0-9]+)", - "url": "\\1" - } - ] - }, - "free": true, - "id": "drtuber", - "name": "drtuber", - "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": "" -} diff --git a/servers/drtuber.py b/servers/drtuber.py deleted file mode 100644 index dfd366ae..00000000 --- a/servers/drtuber.py +++ /dev/null @@ -1,22 +0,0 @@ -# -*- coding: utf-8 -*- -from core import httptools -from core import scrapertools -from platformcode import logger - - - -def get_video_url(page_url, video_password): - logger.info("(page_url='%s')" % page_url) - video_urls = [] - url = "https://www.drtuber.com/player_config_json/?vid=%s&aid=0&domain_id=0&embed=0&ref=null&check_speed=0" %page_url - data = httptools.downloadpage(url).data - data = scrapertools.find_single_match(data, '"files":(.*?)"quality"') - patron = '"([lh])q":"([^"]+)"' - matches = scrapertools.find_multiple_matches(data, patron) - for quality, scrapedurl in matches: - url = scrapedurl.replace("\/", "/") - if "l" in quality: quality = "360" - if "h" in quality: quality = "720" - video_urls.append(["[drtuber] %s" %quality, url]) - return video_urls - diff --git a/servers/hdmario.py b/servers/hdmario.py index 5f3106f4..1a692b75 100644 --- a/servers/hdmario.py +++ b/servers/hdmario.py @@ -2,7 +2,7 @@ import xbmc from core import httptools, scrapertools, filetools -from platformcode import logger, config, platformtools +from platformcode import logger, config baseUrl = 'https://hdmario.live' @@ -39,8 +39,10 @@ def get_video_url(page_url, premium=False, user="", password="", video_password= page = httptools.downloadpage(page_url + '?code=' + code) data = page.data logger.info(data) + from lib import jsunpack_js2py + unpacked = jsunpack_js2py.unpack(scrapertools.find_single_match(data, '