46
plugin.video.alfa/servers/verystream.json
Normal file
46
plugin.video.alfa/servers/verystream.json
Normal file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"active": true,
|
||||
"find_videos": {
|
||||
"ignore_urls": [],
|
||||
"patterns": [
|
||||
{
|
||||
"pattern": "(?:verystream).*?/(?:e|stream)/([0-9a-zA-Z-_]+)",
|
||||
"url": "https://verystream.com/e/\\1/"
|
||||
}
|
||||
]
|
||||
},
|
||||
"free": true,
|
||||
"id": "verystream",
|
||||
"name": "verystream",
|
||||
"premium": [
|
||||
"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
|
||||
}
|
||||
],
|
||||
"thumbnail": "server_verystream.png"
|
||||
}
|
||||
|
||||
55
plugin.video.alfa/servers/verystream.py
Normal file
55
plugin.video.alfa/servers/verystream.py
Normal file
@@ -0,0 +1,55 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Verystream server tool
|
||||
# Developed by KOD for KOD
|
||||
# KOD - Kodi on Demand Team
|
||||
|
||||
from core import httptools
|
||||
from core import scrapertools
|
||||
from platformcode import config, logger
|
||||
from core import jsontools
|
||||
|
||||
def test_video_exists(page_url):
|
||||
logger.info("(page_url='%s')" % page_url)
|
||||
|
||||
header = {}
|
||||
if "|" in page_url:
|
||||
page_url, referer = page_url.split("|", 1)
|
||||
header = {'Referer': referer}
|
||||
data = httptools.downloadpage(page_url, headers=header, cookies=False).data
|
||||
if 'not found!' in data:
|
||||
data = httptools.downloadpage(page_url.replace("/e/", "/stream/"), headers=header, cookies=False).data
|
||||
if 'not found!' in data:
|
||||
return False, config.get_localized_string(70449) % "Verystream"
|
||||
|
||||
return True, ""
|
||||
|
||||
def get_video_url(page_url, premium=False, user="", password="", video_password=""):
|
||||
logger.info()
|
||||
itemlist = []
|
||||
|
||||
header = {}
|
||||
if "|" in page_url:
|
||||
page_url, referer = page_url.split("|", 1)
|
||||
header = {'Referer': referer}
|
||||
|
||||
data = httptools.downloadpage(page_url, cookies=False, headers=header).data
|
||||
subtitle = scrapertools.find_single_match(data, '<track kind="captions" src="([^"]+)" srclang="it"')
|
||||
|
||||
try:
|
||||
code = scrapertools.find_single_match(data, '<p style="" class="" id="videolink">(.*?)</p>' )
|
||||
url = "https://verystream.com/gettoken/" + code + "?mime=true"
|
||||
url = httptools.downloadpage(url, only_headers=True, follow_redirects=False).headers.get('location')
|
||||
extension = scrapertools.find_single_match(url, '(\..{,3})\?')
|
||||
itemlist.append([extension, url, 0,subtitle])
|
||||
|
||||
except Exception:
|
||||
logger.info()
|
||||
if config.get_setting('api', __file__):
|
||||
url = get_link_api(page_url)
|
||||
extension = scrapertools.find_single_match(url, '(\..{,3})\?')
|
||||
if url:
|
||||
itemlist.append([extension, url, 0,subtitle])
|
||||
logger.debug(itemlist)
|
||||
|
||||
return itemlist
|
||||
|
||||
Reference in New Issue
Block a user