From c5dffe09dab96304e024ef782c904a64ae74439b Mon Sep 17 00:00:00 2001
From: Intel1
|\s{2,}', "", data)
packed_data = scrapertools.find_single_match(data, "javascript'>(eval.*?)")
unpacked = jsunpack.unpack(packed_data)
- patron = "file:(.*?),label:(.*?)}"
+ patron = "sources..([^\]]+)"
matches = re.compile(patron, re.DOTALL).findall(unpacked)
- for url, quality in matches:
- video_urls.append(['%s' % quality, url])
- video_urls.sort(key=lambda x: int(x[0]))
+ for url in matches:
+ url += "|Referer=%s" %page_url
+ video_urls.append(['mp4', url])
return video_urls
diff --git a/plugin.video.alfa/servers/nowvideo.json b/plugin.video.alfa/servers/nowvideo.json
deleted file mode 100755
index c7298a48..00000000
--- a/plugin.video.alfa/servers/nowvideo.json
+++ /dev/null
@@ -1,71 +0,0 @@
-{
- "active": true,
- "find_videos": {
- "ignore_urls": [],
- "patterns": [
- {
- "pattern": "nowvideo.../(?:video/|embed.php\\?.*v=)([A-z0-9]+)",
- "url": "http://www.nowvideo.sx/video/\\1"
- }
- ]
- },
- "free": true,
- "id": "nowvideo",
- "name": "nowvideo",
- "premium": [
- "nowvideo",
- "realdebrid"
- ],
- "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
- },
- {
- "default": false,
- "enabled": true,
- "id": "premium",
- "label": "Activar cuenta premium",
- "type": "bool",
- "visible": true
- },
- {
- "default": "",
- "enabled": "eq(-1,true)",
- "id": "user",
- "label": "@30014",
- "type": "text",
- "visible": true
- },
- {
- "default": "",
- "enabled": "eq(-2,true)+!eq(-1,'')",
- "hidden": true,
- "id": "password",
- "label": "@30015",
- "type": "text",
- "visible": true
- }
- ],
- "thumbnail": "server_nowvideo.png"
-}
\ No newline at end of file
diff --git a/plugin.video.alfa/servers/nowvideo.py b/plugin.video.alfa/servers/nowvideo.py
deleted file mode 100755
index 5fad7efb..00000000
--- a/plugin.video.alfa/servers/nowvideo.py
+++ /dev/null
@@ -1,59 +0,0 @@
-# -*- coding: utf-8 -*-
-
-import re
-
-from core import httptools
-from core import scrapertools
-from platformcode import logger
-
-
-def test_video_exists(page_url):
- logger.info("(page_url='%s')" % page_url)
- url = page_url.replace("http://www.nowvideo.sx/video/", "http://embed.nowvideo.sx/embed/?v=")
- data = httptools.downloadpage(url).data
- if "The file is being converted" in data or "Please try again later" in data:
- return False, "El fichero está en proceso"
- elif "no longer exists" in data:
- return False, "El fichero ha sido borrado"
- return True, ""
-
-
-def get_video_url(page_url, premium=False, user="", password="", video_password=""):
- logger.info("(page_url='%s')" % page_url)
- video_urls = []
- if premium:
- login_url = "http://www.nowvideo.eu/login.php"
- data = httptools.downloadpage(login_url).data
- login_url = "http://www.nowvideo.eu/login.php?return="
- post = "user=" + user + "&pass=" + password + "®ister=Login"
- headers = {"Referer": "http://www.nowvideo.eu/login.php"}
- data = httptools.downloadpage(login_url, post, headers=headers).data
- data = httptools.downloadpage(page_url).data
- flashvar_file = scrapertools.get_match(data, 'flashvars.file="([^"]+)"')
- flashvar_filekey = scrapertools.get_match(data, 'flashvars.filekey=([^;]+);')
- flashvar_filekey = scrapertools.get_match(data, 'var ' + flashvar_filekey + '="([^"]+)"')
- flashvar_user = scrapertools.get_match(data, 'flashvars.user="([^"]+)"')
- flashvar_key = scrapertools.get_match(data, 'flashvars.key="([^"]+)"')
- flashvar_type = scrapertools.get_match(data, 'flashvars.type="([^"]+)"')
- url = "http://www.nowvideo.eu/api/player.api.php?user=" + flashvar_user + "&file=" + flashvar_file + "&pass=" + flashvar_key + "&cid=1&cid2=undefined&key=" + flashvar_filekey.replace(
- ".", "%2E").replace("-", "%2D") + "&cid3=undefined"
- data = httptools.downloadpage(url).data
- location = scrapertools.get_match(data, 'url=([^\&]+)&')
- location = location + "?client=FLASH"
- video_urls.append([scrapertools.get_filename_from_url(location)[-4:] + " [premium][nowvideo]", location])
- else:
- url = page_url.replace("http://www.nowvideo.sx/video/", "http://embed.nowvideo.sx/embed/?v=")
- data = httptools.downloadpage(url).data
- videourls = scrapertools.find_multiple_matches(data, 'src\s*:\s*[\'"]([^\'"]+)[\'"]')
- if not videourls:
- videourls = scrapertools.find_multiple_matches(data, '
|\s{2,}', "", data)
- logger.debug(data)
- patron = "src=([^ ]+) type='.*?/(.*?)'"
- matches = re.compile(patron, re.DOTALL).findall(data)
-
- for url, type in matches:
- video_urls.append(['vidzella %s' % type, url])
-
- return video_urls
diff --git a/plugin.video.alfa/servers/watchers.json b/plugin.video.alfa/servers/watchers.json
deleted file mode 100755
index 726b6510..00000000
--- a/plugin.video.alfa/servers/watchers.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "active": true,
- "find_videos": {
- "ignore_urls": [],
- "patterns": [
- {
- "pattern": "watchers.to/(?:embed-|)([A-z0-9]+)",
- "url": "http://watchers.to/embed-\\1.html"
- }
- ]
- },
- "free": true,
- "id": "watchers",
- "name": "watchers",
- "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": "http://i.imgur.com/WApzSMn.png?1"
-}
\ No newline at end of file
diff --git a/plugin.video.alfa/servers/watchers.py b/plugin.video.alfa/servers/watchers.py
deleted file mode 100755
index 286afa86..00000000
--- a/plugin.video.alfa/servers/watchers.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- coding: utf-8 -*-
-
-from core import httptools
-from core import scrapertools
-from lib import jsunpack
-from platformcode import logger
-
-
-def test_video_exists(page_url):
- logger.info("(page_url='%s')" % page_url)
-
- data = httptools.downloadpage(page_url).data
- if "File Not Found" in data:
- return False, "[Watchers] El archivo no existe o ha sido borrado"
-
- return True, ""
-
-
-def get_video_url(page_url, premium=False, user="", password="", video_password=""):
- logger.info("url=%s" % page_url)
- video_urls = []
-
- data = httptools.downloadpage(page_url).data
- packed = scrapertools.find_single_match(data, '(eval\(function\(p,a,c,k,e.*?)').strip()
- unpack = jsunpack.unpack(packed)
-
- bloque = scrapertools.find_single_match(unpack, 'sources:\[(.*?)\}\]')
- matches = scrapertools.find_multiple_matches(bloque, 'file:"([^"]+)"(?:,label:"([^"]+)"|\})')
- for media_url, calidad in matches:
- ext = scrapertools.get_filename_from_url(media_url)[-4:]
- if calidad:
- ext += " " + calidad + "p"
- media_url += "|Referer=%s" % page_url
- video_urls.append([ext + ' [watchers]', media_url])
-
- return video_urls
diff --git a/plugin.video.alfa/servers/watchvideo.py b/plugin.video.alfa/servers/watchvideo.py
index 43bea8fc..d38c039e 100755
--- a/plugin.video.alfa/servers/watchvideo.py
+++ b/plugin.video.alfa/servers/watchvideo.py
@@ -18,8 +18,13 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
logger.info("url=" + page_url)
video_urls = []
data = httptools.downloadpage(page_url).data
- media_urls = scrapertools.find_multiple_matches(data, 'file:"([^"]+)"')
+ packed = scrapertools.find_single_match(data, "text/javascript'>(.*?)\s*")
+ unpacked = jsunpack.unpack(packed)
+ media_urls = scrapertools.find_multiple_matches(unpacked, 'file:"([^"]+)"')
for media_url in media_urls:
+ media_url += "|Referer=%s" %page_url
+ if ".png" in media_url:
+ continue
ext = "mp4"
if "m3u8" in media_url:
ext = "m3u8"
diff --git a/plugin.video.alfa/servers/wholecloud.json b/plugin.video.alfa/servers/wholecloud.json
deleted file mode 100755
index 1faa1ab1..00000000
--- a/plugin.video.alfa/servers/wholecloud.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "active": true,
- "find_videos": {
- "ignore_urls": [],
- "patterns": [
- {
- "pattern": "wholecloud.net/(?:video/|embed/?v=)([A-z0-9]+)",
- "url": "http://wholecloud.net/embed/?v=\\1"
- }
- ]
- },
- "free": true,
- "id": "wholecloud",
- "name": "wholecloud",
- "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": "http://i.imgur.com/yIAQurm.png"
-}
\ No newline at end of file
diff --git a/plugin.video.alfa/servers/wholecloud.py b/plugin.video.alfa/servers/wholecloud.py
deleted file mode 100755
index 5905f9d2..00000000
--- a/plugin.video.alfa/servers/wholecloud.py
+++ /dev/null
@@ -1,38 +0,0 @@
-# -*- coding: utf-8 -*-
-
-from core import httptools
-from core import scrapertools
-from platformcode import logger
-
-
-def test_video_exists(page_url):
- logger.info("(page_url='%s')" % page_url)
- data = httptools.downloadpage(page_url).data
-
- if "This file no longer exists on our servers" in data:
- return False, "[wholecloud] El archivo ha sido eliminado o no existe"
- if "This video is not yet ready" in data:
- return False, "[wholecloud] El archivo no está listo, se está subiendo o convirtiendo"
-
- return True, ""
-
-
-def get_video_url(page_url, premium=False, user="", password="", video_password=""):
- logger.info("url=" + page_url)
-
- data = httptools.downloadpage(page_url).data
-
- video_urls = []
- media_urls = scrapertools.find_multiple_matches(data, '([^"]+)'
-
+ data = re.sub(r"\n|\r|\t|\s{2}| ", "", data)
+ patron = '([^<]+)'
matches = re.compile(patron, re.DOTALL).findall(data)
for url, title, thumbnail, count in matches:
if "go.php?" in url:
@@ -109,6 +108,28 @@ def categorias(item):
return itemlist
+def series(item):
+ logger.info()
+ itemlist = []
+
+ data = get_data(item.url)
+ data = re.sub(r"\n|\r|\t|\s{2}| ", "", data)
+ patron = '([^<]+).*?p>([^<]+)