summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreracknaphobia <eracknaphobia@hotmail.com>2017-12-04 15:56:07 -0500
committerMartijn Kaijser <martijn@xbmc.org>2017-12-04 21:56:07 +0100
commitd55c7ab281e0aa01a415a68386fae5c345be4a46 (patch)
tree34596a84783344e9eeeaef7d0127c63cf391fc12
parentfe4c482f3e20864c093bce16a9e0460ab8a45247 (diff)
[plugin.video.simpsonsworld] 2017.11.28 (#1537)
-rw-r--r--plugin.video.simpsonsworld/addon.xml9
-rw-r--r--plugin.video.simpsonsworld/resources/lib/globals.py58
-rw-r--r--plugin.video.simpsonsworld/resources/settings.xml2
3 files changed, 38 insertions, 31 deletions
diff --git a/plugin.video.simpsonsworld/addon.xml b/plugin.video.simpsonsworld/addon.xml
index af895e2..6288305 100644
--- a/plugin.video.simpsonsworld/addon.xml
+++ b/plugin.video.simpsonsworld/addon.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<addon id="plugin.video.simpsonsworld" name="Simpsons World" version="2017.4.5" provider-name="eracknaphobia">
+<addon id="plugin.video.simpsonsworld" name="Simpsons World" version="2017.11.28" provider-name="eracknaphobia">
<requires>
- <import addon="xbmc.python" version="2.25.0"/>
- <import addon="script.module.adobepass" version="2017.3.20"/>
+ <import addon="xbmc.python" version="2.25.0"/>
+ <import addon="script.module.adobepass" version="2017.3.20"/>
+ <import addon="script.module.requests" version="2.9.1"/>
</requires>
<extension point="xbmc.python.pluginsource" library="simpsons.py">
<provides>video</provides>
@@ -13,7 +14,7 @@
<description lang="en_GB">Simpsons World has every episode of the series accessible to authenticated FX subscribers</description>
<disclaimer lang="en_GB"></disclaimer>
<news>
-- Fixed Icon / Fanart not displaying
+- Fixed Invalid XML issue
</news>
<language>en</language>
<platform>all</platform>
diff --git a/plugin.video.simpsonsworld/resources/lib/globals.py b/plugin.video.simpsonsworld/resources/lib/globals.py
index 43911f5..869f914 100644
--- a/plugin.video.simpsonsworld/resources/lib/globals.py
+++ b/plugin.video.simpsonsworld/resources/lib/globals.py
@@ -1,8 +1,8 @@
import sys, os
import xbmc, xbmcplugin, xbmcgui, xbmcaddon
-import urllib, urllib2
-import json
+import urllib
import base64
+import requests
from adobepass.adobe import ADOBE
@@ -13,6 +13,7 @@ ROOTDIR = ADDON.getAddonInfo('path')
FANART = os.path.join(ROOTDIR,"resources/media/fanart.jpg")
ICON = os.path.join(ROOTDIR,"resources/media/icon.png")
+VERIFY = False
#Addon Settings
@@ -62,11 +63,12 @@ season_art = {'1':'71663-1-16.jpg',
'26':'71663-26.jpg',
'27':'71663-27-2.jpg',
'28':'71663-28.jpg',
+ '29':'71663-29-3.jpg'
}
def listSeasons():
- for x in range(1, 29):
+ for x in range(1, 30):
title = "Season "+str(x)
url = str(x)
#icon = 'http://thetvdb.com/banners/seasons/71663-'+str(x)+'-15.jpg'
@@ -78,18 +80,20 @@ def listSeasons():
def listEpisodes(season):
- url = "http://fapi2.fxnetworks.com/androidtv/videos?filter%5Bfapi_show_id%5D=9aad7da1-093f-40f5-b371-fec4122f0d86&filter%5Bseason%5D="+season+"&limit=500&filter%5Btype%5D=episode"
- req = urllib2.Request(url)
- req.add_header("Connection", "keep-alive")
- req.add_header("Accept", "*/*")
- req.add_header("Accept-Encoding", "deflate")
- req.add_header("Accept-Language", "en-us")
- req.add_header("Connection", "keep-alive")
- req.add_header("Authentication", "androidtv:a4y4o0e01jh27dsyrrgpvo6d1wvpravc2c4szpp4")
- req.add_header("User-Agent", UA_FX)
- response = urllib2.urlopen(req)
- json_source = json.load(response)
- response.close()
+ url = "http://fapi2.fxnetworks.com/androidtv/videos?filter%5Bfapi_show_id%5D=9aad7da1-093f-40f5-b371-fec4122f0d86&filter%5Bseason%5D="+season+"&limit=500&filter%5Btype%5D=episode"
+
+ headers = {
+ "Connection": "keep-alive",
+ "Accept": "*/*",
+ "Accept-Encoding": "deflate",
+ "Accept-Language": "en-us",
+ "Connection": "keep-alive",
+ "Authentication": "androidtv:a4y4o0e01jh27dsyrrgpvo6d1wvpravc2c4szpp4",
+ "User-Agent": UA_FX,
+ }
+
+ r = requests.get(url, headers=headers, verify=VERIFY)
+ json_source = r.json()
#for episode in reversed(json_source['videos']):
for episode in sorted(json_source['videos'], key=lambda k: k['episode']):
@@ -120,17 +124,19 @@ def getStream(url):
if adobe.authorize():
media_token = adobe.mediaToken()
url = url + "&auth="+urllib.quote(base64.b64decode(media_token))
- req = urllib2.Request(url)
- req.add_header("Accept", "*/*")
- req.add_header("Accept-Encoding", "deflate")
- req.add_header("Accept-Language", "en-us")
- req.add_header("Connection", "keep-alive")
- req.add_header("User-Agent", UA_FX)
- response = urllib2.urlopen(req)
- response.close()
-
- #get the last url forwarded to
- stream_url = response.geturl()
+
+ headers = {
+ "Connection": "keep-alive",
+ "Accept": "*/*",
+ "Accept-Encoding": "deflate",
+ "Accept-Language": "en-us",
+ "Connection": "keep-alive",
+ "User-Agent": UA_FX,
+ }
+
+ r = requests.get(url, headers=headers, verify=VERIFY)
+
+ stream_url = r.url
stream_url = stream_url + '|User-Agent=okhttp/3.4.1'
listitem = xbmcgui.ListItem(path=stream_url)
xbmcplugin.setResolvedUrl(addon_handle, True, listitem)
diff --git a/plugin.video.simpsonsworld/resources/settings.xml b/plugin.video.simpsonsworld/resources/settings.xml
index cf86ce6..691dd1a 100644
--- a/plugin.video.simpsonsworld/resources/settings.xml
+++ b/plugin.video.simpsonsworld/resources/settings.xml
@@ -4,6 +4,6 @@
<category label="30001">
<setting id="ratio" type="labelenum" label="30010" lvalues="16x9|4x3" default="16x9" />
<setting id="commentary" type="bool" label="30020" default="false" />
- <setting id="deauthorize" type="action" label="30900" action="RunPlugin(plugin://plugin.video.simpsonsworld/?url=junk&mode=999)" option="close" />
+ <setting id="deauthorize" type="action" label="30900" action="RunPlugin(plugin://plugin.video.simpsonsworld/?url=junk&amp;mode=999)" option="close" />
</category>
</settings>