Ottimizzazione deltabit

This commit is contained in:
Alhaziel01
2020-06-22 18:48:31 +02:00
parent 714381884f
commit 5d20deddf1
2 changed files with 18 additions and 17 deletions
+5
View File
@@ -577,6 +577,11 @@ class UnshortenIt(object):
if not r: if not r:
r = httptools.downloadpage(uri, follow_redirect=True, timeout=self._timeout, cookies=False) r = httptools.downloadpage(uri, follow_redirect=True, timeout=self._timeout, cookies=False)
uri = r.url 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 return uri, r.code
except Exception as e: except Exception as e:
+13 -17
View File
@@ -1,40 +1,36 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import time import time, sys
import urllib if sys.version_info[0] >= 3:
import urllib.parse as urllib
else:
import urllib
from core import httptools from core import httptools, scrapertools
from core import scrapertools
from lib import jsunpack from lib import jsunpack
from platformcode import logger, config from platformcode import logger, config
def test_video_exists(page_url): def test_video_exists(page_url):
logger.info("(page_url='%s')" % 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: 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, "" return True, ""
pass
def get_video_url(page_url, premium=False, user="", password="", video_password=""): def get_video_url(page_url, premium=False, user="", password="", video_password=""):
logger.info("(deltabit page_url='%s')" % page_url) logger.info("(deltabit page_url='%s')" % page_url)
video_urls = [] video_urls = []
data = httptools.downloadpage(page_url).data global data
data = data.replace('"', "'")
page_url_post = scrapertools.find_single_match(data, "<Form method='POST' action='([^']+)'>") post = urllib.urlencode({k: v for k, v in scrapertools.find_multiple_matches(data, "name='([^']+)' value='([^']*)'")})
imhuman = '' time.sleep(2.1)
post = urllib.urlencode({k: v for k, v in scrapertools.find_multiple_matches(data, "name='([^']+)' value='([^']*)'")})+ imhuman
time.sleep(6)
data = httptools.downloadpage(page_url, post=post).data data = httptools.downloadpage(page_url, post=post).data
videos_packed = scrapertools.find_single_match(data, r"</div>\s*<script type='text/javascript'>(eval.function.p,a,c,k,e,.*?)\s*</script>") videos_packed = scrapertools.find_single_match(data, r"</div>\s*<script type='text/javascript'>(eval.function.p,a,c,k,e,.*?)\s*</script>")
video_unpacked = jsunpack.unpack(videos_packed) video_unpacked = jsunpack.unpack(videos_packed)
videos_urls = []
videos = scrapertools.find_single_match(video_unpacked, r'sources:\["([^"]+)"\]') videos = scrapertools.find_single_match(video_unpacked, r'sources:\["([^"]+)"\]')
video_urls.append(['[DeltaBit]', videos.replace('https:','http:')]) video_urls.append([videos.split('.')[-1] + ' [DeltaBit]', videos.replace('https:','http:')])
logger.info("videos_urls #### {}".format(video_urls))
return video_urls return video_urls