domini CF basati sui canali
This commit is contained in:
+10
-5
@@ -12,11 +12,10 @@ except ImportError:
|
|||||||
import urllib, urlparse, cookielib
|
import urllib, urlparse, cookielib
|
||||||
|
|
||||||
|
|
||||||
import inspect, os, time, json
|
import os, time, json
|
||||||
from threading import Lock
|
from threading import Lock
|
||||||
from core.jsontools import to_utf8
|
from core.jsontools import to_utf8
|
||||||
from platformcode import config, logger
|
from platformcode import config, logger
|
||||||
from platformcode.logger import WebErrorException
|
|
||||||
from core import scrapertools
|
from core import scrapertools
|
||||||
|
|
||||||
# Get the addon version
|
# Get the addon version
|
||||||
@@ -42,6 +41,13 @@ if HTTPTOOLS_DEFAULT_DOWNLOAD_TIMEOUT == 0: HTTPTOOLS_DEFAULT_DOWNLOAD_TIMEOUT =
|
|||||||
# Random use of User-Agents, if nad is not specified
|
# Random use of User-Agents, if nad is not specified
|
||||||
HTTPTOOLS_DEFAULT_RANDOM_HEADERS = False
|
HTTPTOOLS_DEFAULT_RANDOM_HEADERS = False
|
||||||
|
|
||||||
|
domainCF = list()
|
||||||
|
channelsCF = ['guardaserieclick', 'casacinema', 'dreamsub', 'ilgeniodellostreaming', 'piratestreaming', 'altadefinizioneclick']
|
||||||
|
otherCF = ['altadefinizione-nuovo.link', 'wstream.video', 'akvideo.stream', 'backin.net']
|
||||||
|
for ch in channelsCF:
|
||||||
|
domainCF.append(urlparse.urlparse(config.get_channel_url(name=ch)).hostname)
|
||||||
|
domainCF.extend(otherCF)
|
||||||
|
|
||||||
def get_user_agent():
|
def get_user_agent():
|
||||||
# Returns the global user agent to be used when necessary for the url.
|
# Returns the global user agent to be used when necessary for the url.
|
||||||
return default_headers["User-Agent"]
|
return default_headers["User-Agent"]
|
||||||
@@ -253,10 +259,9 @@ def downloadpage(url, **opt):
|
|||||||
url = scrapertools.unescape(url)
|
url = scrapertools.unescape(url)
|
||||||
load_cookies()
|
load_cookies()
|
||||||
domain = urlparse.urlparse(url).netloc
|
domain = urlparse.urlparse(url).netloc
|
||||||
|
global domainCF
|
||||||
CF = False
|
CF = False
|
||||||
if domain in ['www.guardaserie.media', 'casacinema.space', 'wstream.video', 'akvideo.stream', 'backin.net',
|
if domain in domainCF:
|
||||||
'dreamsub.stream', 'altadefinizione-nuovo.link', 'ilgeniodellostreaming.si', 'www.piratestreaming.gratis',
|
|
||||||
'altadefinizione.style']:
|
|
||||||
from lib import cloudscraper
|
from lib import cloudscraper
|
||||||
session = cloudscraper.create_scraper()
|
session = cloudscraper.create_scraper()
|
||||||
CF = True
|
CF = True
|
||||||
|
|||||||
+10
-5
@@ -19,6 +19,8 @@ PLUGIN_NAME = "kod"
|
|||||||
__settings__ = xbmcaddon.Addon(id="plugin.video." + PLUGIN_NAME)
|
__settings__ = xbmcaddon.Addon(id="plugin.video." + PLUGIN_NAME)
|
||||||
__language__ = __settings__.getLocalizedString
|
__language__ = __settings__.getLocalizedString
|
||||||
|
|
||||||
|
channels_data = list()
|
||||||
|
|
||||||
def get_addon_core():
|
def get_addon_core():
|
||||||
return __settings__
|
return __settings__
|
||||||
|
|
||||||
@@ -97,12 +99,13 @@ def is_xbmc():
|
|||||||
def get_videolibrary_support():
|
def get_videolibrary_support():
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def get_channel_url(findhostMethod=None):
|
def get_channel_url(findhostMethod=None, name=None):
|
||||||
from core import jsontools
|
from core import jsontools
|
||||||
import inspect
|
import inspect
|
||||||
|
|
||||||
frame = inspect.stack()[1]
|
frame = inspect.stack()[1]
|
||||||
name = os.path.basename(frame[0].f_code.co_filename).replace('.py', '')
|
if not name:
|
||||||
|
name = os.path.basename(frame[0].f_code.co_filename).replace('.py', '')
|
||||||
if findhostMethod:
|
if findhostMethod:
|
||||||
url = jsontools.get_node_from_file(name, 'url')
|
url = jsontools.get_node_from_file(name, 'url')
|
||||||
if not url:
|
if not url:
|
||||||
@@ -112,9 +115,11 @@ def get_channel_url(findhostMethod=None):
|
|||||||
else:
|
else:
|
||||||
ROOT_DIR = xbmc.translatePath(__settings__.getAddonInfo('Path'))
|
ROOT_DIR = xbmc.translatePath(__settings__.getAddonInfo('Path'))
|
||||||
LOCAL_FILE = os.path.join(ROOT_DIR, "channels.json")
|
LOCAL_FILE = os.path.join(ROOT_DIR, "channels.json")
|
||||||
with open(LOCAL_FILE) as f:
|
global channels_data
|
||||||
data = jsontools.load(f.read())
|
if not channels_data:
|
||||||
return data[name]
|
with open(LOCAL_FILE) as f:
|
||||||
|
channels_data = jsontools.load(f.read())
|
||||||
|
return channels_data[name]
|
||||||
|
|
||||||
def get_system_platform():
|
def get_system_platform():
|
||||||
""" fonction: pour recuperer la platform que xbmc tourne """
|
""" fonction: pour recuperer la platform que xbmc tourne """
|
||||||
|
|||||||
Reference in New Issue
Block a user