From 81dd318e3d00b96a0505809f80cd37fb5f35aa97 Mon Sep 17 00:00:00 2001 From: marco Date: Mon, 19 Oct 2020 14:14:03 +0200 Subject: [PATCH] fix per warning translatePath kodi 19, altri piccoli ritocchi --- core/httptools.py | 4 +++- default.py | 7 +++++++ lib/doh.py | 2 +- servers/onlystream.py | 5 +++-- service.py | 6 ++++++ tests/run.sh | 4 ++++ tests/test_generic.py | 2 +- 7 files changed, 25 insertions(+), 5 deletions(-) diff --git a/core/httptools.py b/core/httptools.py index 850d44e9..a06eb9ac 100755 --- a/core/httptools.py +++ b/core/httptools.py @@ -11,13 +11,15 @@ try: except ImportError: import urllib, urlparse, cookielib - import os, time, json from threading import Lock from core.jsontools import to_utf8 from platformcode import config, logger from core import scrapertools +# to surpress InsecureRequestWarning +import urllib3 +urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) # Get the addon version __version = config.get_addon_version() diff --git a/default.py b/default.py index 7ed2cc72..006074e4 100644 --- a/default.py +++ b/default.py @@ -7,6 +7,13 @@ import os import sys import xbmc + +# on kodi 18 its xbmc.translatePath, on 19 xbmcvfs.translatePath +try: + import xbmcvfs + xbmc.translatePath = xbmcvfs.translatePath +except: + pass from platformcode import config, logger logger.info("init...") diff --git a/lib/doh.py b/lib/doh.py index 98ececb9..5375caa5 100644 --- a/lib/doh.py +++ b/lib/doh.py @@ -24,7 +24,7 @@ else: _urlopen = urllib2.urlopen _Request = urllib2.Request -def query(name, type='A', server=DOH_SERVER, path="/dns-query", fallback=True,): +def query(name, type='A', server=DOH_SERVER, path="/dns-query", fallback=True): """ Returns domain name query results retrieved by using DNS over HTTPS protocol # Reference: https://developers.cloudflare.com/1.1.1.1/dns-over-https/json-format/ diff --git a/servers/onlystream.py b/servers/onlystream.py index 12d68cd1..2deef1a7 100644 --- a/servers/onlystream.py +++ b/servers/onlystream.py @@ -8,7 +8,8 @@ from platformcode import config, logger def test_video_exists(page_url): logger.info("(page_url='%s')" % page_url) - data = httptools.downloadpage(page_url, cookies=False).data + global data + data = httptools.downloadpage(page_url).data if 'File you are looking for is not found.' in data: return False, config.get_localized_string(70449) % "Onlystream" @@ -17,7 +18,7 @@ def test_video_exists(page_url): def get_video_url(page_url, premium=False, user="", password="", video_password=""): logger.info("url=" + page_url) - data = httptools.downloadpage(page_url).data + global data # logger.info(data) video_urls = support.get_jwplayer_mediaurl(data, 'Onlystream') return video_urls diff --git a/service.py b/service.py index bc6ff4a3..ada1b043 100644 --- a/service.py +++ b/service.py @@ -8,6 +8,12 @@ import traceback import xbmc import xbmcgui from platformcode import config +# on kodi 18 its xbmc.translatePath, on 19 xbmcvfs.translatePath +try: + import xbmcvfs + xbmc.translatePath = xbmcvfs.translatePath +except: + pass librerias = xbmc.translatePath(os.path.join(config.get_runtime_path(), 'lib')) sys.path.insert(0, librerias) diff --git a/tests/run.sh b/tests/run.sh index 2f878315..2e866511 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -1,3 +1,7 @@ +rm tests/home/userdata/addon_data/plugin.video.kod/settings_channels/*.json +rm tests/home/userdata/addon_data/plugin.video.kod/settings_servers/*.json +rm tests/home/userdata/addon_data/plugin.video.kod/cookies.dat +rm tests/home/userdata/addon_data/plugin.video.kod/kod_db.sqlite python -m pip install --upgrade pip pip install sakee pip install html-testRunner diff --git a/tests/test_generic.py b/tests/test_generic.py index f5a45411..befde289 100644 --- a/tests/test_generic.py +++ b/tests/test_generic.py @@ -242,7 +242,7 @@ class GenericChannelMenuItemTest(unittest.TestCase): if self.ch in chNumRis: # i know how much results should be for content in chNumRis[self.ch]: if content in self.title: - risNum = len([i for i in self.itemlist if not i.nextPage]) # not count nextpage + risNum = len([i for i in self.itemlist if i.title != typo(config.get_localized_string(30992), 'color kod bold')]) # not count nextpage self.assertEqual(chNumRis[self.ch][content], risNum, 'channel ' + self.ch + ' -> ' + self.title + ' returned wrong number of results
' + str(risNum) + ' but should be ' + str(chNumRis[self.ch][content]) + '
' +