- Aggiunto DooD Stream
- Fix Vudeo
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
{
|
||||
"active": true,
|
||||
"find_videos": {
|
||||
"ignore_urls": [],
|
||||
"patterns": [
|
||||
{
|
||||
"pattern": "(https://dood(?:stream|).(?:watch|to|com)/(?:e|d)/[a-z0-9]+)",
|
||||
"url": "\\1"
|
||||
}
|
||||
]
|
||||
},
|
||||
"free": true,
|
||||
"id": "doodstream",
|
||||
"name": "DooD Stream",
|
||||
"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
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import re, time
|
||||
from lib import js2py
|
||||
from core import httptools, scrapertools
|
||||
from platformcode import logger, config
|
||||
|
||||
def test_video_exists(page_url):
|
||||
global data
|
||||
logger.info('page url=', page_url)
|
||||
response = httptools.downloadpage(page_url)
|
||||
|
||||
if response.code == 404:
|
||||
return False, config.get_localized_string(70449) % 'DooD Stream'
|
||||
else:
|
||||
data = response.data
|
||||
return True, ""
|
||||
|
||||
|
||||
def get_video_url(page_url, premium=False, user="", password="", video_password=""):
|
||||
global data
|
||||
logger.info("URL", page_url)
|
||||
|
||||
video_urls = list()
|
||||
host = "https://dood.watch"
|
||||
|
||||
new_url = scrapertools.find_single_match(data, r'<iframe src="([^"]+)"')
|
||||
if new_url:
|
||||
data = httptools.downloadpage(host + new_url).data
|
||||
logger.info('DATA', data)
|
||||
|
||||
label = scrapertools.find_single_match(data, r'type:\s*"video/([^"]+)"')
|
||||
|
||||
js_code = scrapertools.find_single_match(data, ('(function makePlay.*?;})'))
|
||||
js_code = re.sub(r"\+Date.now\(\)", '', js_code)
|
||||
js = js2py.eval_js(js_code)
|
||||
makeplay = js() + str(int(time.time()*1000))
|
||||
|
||||
base_url = scrapertools.find_single_match(data, r"\$.get\('([^']+)'")
|
||||
data = httptools.downloadpage("%s%s" % (host, base_url), headers={"referer": page_url}).data
|
||||
data = re.sub(r'\s+', '', data)
|
||||
|
||||
url = data + makeplay + "|Referer=%s" % page_url
|
||||
video_urls.append([ label + ' [DooD Stream]', url])
|
||||
|
||||
return video_urls
|
||||
+3
-7
@@ -4,18 +4,14 @@
|
||||
"ignore_urls": [],
|
||||
"patterns": [
|
||||
{
|
||||
"pattern": "https?://vudeo.net/embed-([a-z0-9-.]+)\\.html",
|
||||
"url": "https://vudeo.net/embed-\\1.html"
|
||||
},
|
||||
{
|
||||
"pattern": "https?://vudeo.net/([a-z0-9-.]+)",
|
||||
"url": "https://vudeo.net/embed-\\1.html"
|
||||
"pattern": "vudeo.net/(?:embed-)?([a-z0-9-.]+)",
|
||||
"url": "https://vudeo.net/\\1.html"
|
||||
}
|
||||
]
|
||||
},
|
||||
"free": true,
|
||||
"id": "vudeo",
|
||||
"name": "vudeo",
|
||||
"name": "Vudeo",
|
||||
"settings": [
|
||||
{
|
||||
"default": false,
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ def test_video_exists(page_url):
|
||||
response = httptools.downloadpage(page_url)
|
||||
|
||||
if response.code == 404:
|
||||
return False, support.config.get_localized_string(70449) % "vudeo"
|
||||
return False, support.config.get_localized_string(70449) % "Vudeo"
|
||||
else:
|
||||
data = response.data
|
||||
return True, ""
|
||||
@@ -19,4 +19,4 @@ def test_video_exists(page_url):
|
||||
def get_video_url(page_url, premium=False, user="", password="", video_password=""):
|
||||
global data
|
||||
logger.info("url=" + page_url)
|
||||
return support.get_jwplayer_mediaurl(data, 'vudeo')
|
||||
return support.get_jwplayer_mediaurl(data, 'Vudeo')
|
||||
|
||||
Reference in New Issue
Block a user