From 5d20deddf18e49a6c1144dc13b5fb6c230f1ef1b Mon Sep 17 00:00:00 2001 From: Alhaziel01 Date: Mon, 22 Jun 2020 18:48:31 +0200 Subject: [PATCH] Ottimizzazione deltabit --- lib/unshortenit.py | 5 +++++ servers/deltabit.py | 30 +++++++++++++----------------- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/lib/unshortenit.py b/lib/unshortenit.py index 68533247..19b60efe 100644 --- a/lib/unshortenit.py +++ b/lib/unshortenit.py @@ -577,6 +577,11 @@ class UnshortenIt(object): if not r: r = httptools.downloadpage(uri, follow_redirect=True, timeout=self._timeout, cookies=False) uri = r.url + if "4snip" in uri: + if 'out_generator' in uri: + uri = re.findall('url=(.*)$', uri)[0] + elif '/decode/' in uri: + uri = httptools.downloadpage(uri, follow_redirects=True).url return uri, r.code except Exception as e: diff --git a/servers/deltabit.py b/servers/deltabit.py index b1288073..ad811ae0 100644 --- a/servers/deltabit.py +++ b/servers/deltabit.py @@ -1,40 +1,36 @@ # -*- coding: utf-8 -*- -import time -import urllib +import time, sys +if sys.version_info[0] >= 3: + import urllib.parse as urllib +else: + import urllib -from core import httptools -from core import scrapertools +from core import httptools, scrapertools from lib import jsunpack from platformcode import logger, config def test_video_exists(page_url): logger.info("(page_url='%s')" % page_url) - data = httptools.downloadpage(page_url).data + global data + data = httptools.downloadpage(page_url).data.replace('"', "'") if "Not Found" in data or "File Does not Exist" in data: - return False, config.get_localized_string(70449) % "Deltabit" + return False, config.get_localized_string(70449) % "DeltaBit" return True, "" - pass def get_video_url(page_url, premium=False, user="", password="", video_password=""): logger.info("(deltabit page_url='%s')" % page_url) video_urls = [] - data = httptools.downloadpage(page_url).data - data = data.replace('"', "'") + global data - page_url_post = scrapertools.find_single_match(data, "
") - imhuman = '' - post = urllib.urlencode({k: v for k, v in scrapertools.find_multiple_matches(data, "name='([^']+)' value='([^']*)'")})+ imhuman - time.sleep(6) + post = urllib.urlencode({k: v for k, v in scrapertools.find_multiple_matches(data, "name='([^']+)' value='([^']*)'")}) + time.sleep(2.1) data = httptools.downloadpage(page_url, post=post).data videos_packed = scrapertools.find_single_match(data, r"\s*") video_unpacked = jsunpack.unpack(videos_packed) - videos_urls = [] videos = scrapertools.find_single_match(video_unpacked, r'sources:\["([^"]+)"\]') - video_urls.append(['[DeltaBit]', videos.replace('https:','http:')]) - - logger.info("videos_urls #### {}".format(video_urls)) + video_urls.append([videos.split('.')[-1] + ' [DeltaBit]', videos.replace('https:','http:')]) return video_urls