Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #-*- coding: utf-8 -*-
- #Vstream https://github.com/Kodi-vStream/venom-xbmc-addons
- from resources.lib.handler.requestHandler import cRequestHandler
- from resources.lib.config import cConfig
- from resources.hosters.hoster import iHoster
- from resources.lib.parser import cParser
- from resources.lib.packer import cPacker
- import re,xbmcgui,xbmc
- class cHoster(iHoster):
- def __init__(self):
- self.__sDisplayName = 'Userscloud'
- self.__sFileName = self.__sDisplayName
- self.__sHD = ''
- def getDisplayName(self):
- return self.__sDisplayName
- def setDisplayName(self, sDisplayName):
- self.__sDisplayName = sDisplayName + ' [COLOR skyblue]'+self.__sDisplayName+'[/COLOR]'
- def setFileName(self, sFileName):
- self.__sFileName = sFileName
- def getFileName(self):
- return self.__sFileName
- def getPluginIdentifier(self):
- return 'userscloud'
- def setHD(self, sHD):
- self.__sHD = ''
- def getHD(self):
- return self.__sHD
- def isDownloadable(self):
- return True
- def isJDownloaderable(self):
- return True
- def getPattern(self):
- return ''
- def __getIdFromUrl(self, sUrl):
- return ''
- def setUrl(self, sUrl):
- self.__sUrl = str(sUrl)
- def checkUrl(self, sUrl):
- return True
- def __getUrl(self, media_id):
- return
- def getMediaLink(self):
- return self.__getMediaLinkForGuest()
- def __getMediaLinkForGuest(self):
- sUrl = self.__sUrl
- oRequest = cRequestHandler(sUrl)
- sHtmlContent = oRequest.request()
- oParser = cParser()
- #xbmc.log(str(sHtmlContent))
- #type1 sans protect
- sPattern = '<div id="player_code">.+?{file: *"([^"]+)",'
- aResult = oParser.parse(sHtmlContent,sPattern)
- if (aResult[0] == True):
- api_call = aResult[1][0]
- #type2 packer
- sPattern = '(eval\(function\(p,a,c,k,e(?:.|\s)+?\))<\/script>'
- aResult = oParser.parse(sHtmlContent,sPattern)
- if (aResult[0] == True):
- sHtmlContent = cPacker().unpack(aResult[1][0])
- #type video/divx
- sPattern = 'name="src"value="([^"]+)".+?"type="([^"]+)"'
- aResult = oParser.parse(sHtmlContent,sPattern)
- #xbmc.log(str(aResult))
- if (aResult[0] == True):
- #initialisation des tableaux
- url=[]
- qua=[]
- #Replissage des tableaux
- for i in aResult[1]:
- url.append(str(i[0]))
- qua.append(str(i[1]))
- #Si une seule url
- if len(url) == 1:
- api_call = url[0]
- #si plus de une
- elif len(url) > 1:
- #Afichage du tableau
- dialog2 = xbmcgui.Dialog()
- ret = dialog2.select('Select Quality',qua)
- if (ret > -1):
- api_call = url[ret]
- if (api_call):
- return True, api_call
- return False, False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement