# -*- coding: utf-8 -*- # vStream https://github.com/Kodi-vStream/venom-xbmc-addons import re from resources.lib.gui.hoster import cHosterGui from resources.lib.gui.gui import cGui from resources.lib.handler.inputParameterHandler import cInputParameterHandler from resources.lib.handler.outputParameterHandler import cOutputParameterHandler from resources.lib.handler.requestHandler import cRequestHandler from resources.lib.parser import cParser from resources.lib.util import urlEncode from resources.lib.comaddon import progress SITE_IDENTIFIER = 'planet_streaming' SITE_NAME = 'Planet Streaming' SITE_DESC = 'Films en Streaming complet VF HD' URL_MAIN = 'https://wvw.planet-streaming1.com/' MOVIE_MOVIE = (True, 'load') MOVIE_NEWS = (URL_MAIN + 'films/', 'showMovies') MOVIE_TOP = (URL_MAIN + 'exclu/', 'showMovies') MOVIE_HD = (URL_MAIN + 'xfsearch/hd/', 'showMovies') MOVIE_GENRES = (URL_MAIN, 'showGenres') URL_SEARCH = (URL_MAIN + 'index.php?do=search', 'showMovies') URL_SEARCH_MOVIES = (URL_SEARCH[0], 'showMovies') FUNCTION_SEARCH = 'showMovies' UA = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0' def load(): oGui = cGui() oOutputParameterHandler = cOutputParameterHandler() oOutputParameterHandler.addParameter('siteUrl', 'http://venom/') oGui.addDir(SITE_IDENTIFIER, 'showSearch', 'Recherche', 'search.png', oOutputParameterHandler) oOutputParameterHandler = cOutputParameterHandler() oOutputParameterHandler.addParameter('siteUrl', MOVIE_NEWS[0]) oGui.addDir(SITE_IDENTIFIER, MOVIE_NEWS[1], 'Films (Derniers ajouts)', 'news.png', oOutputParameterHandler) oOutputParameterHandler = cOutputParameterHandler() oOutputParameterHandler.addParameter('siteUrl', MOVIE_TOP[0]) oGui.addDir(SITE_IDENTIFIER, MOVIE_TOP[1], 'Films (Top exclu)', 'star.png', oOutputParameterHandler) oOutputParameterHandler = cOutputParameterHandler() oOutputParameterHandler.addParameter('siteUrl', MOVIE_HD[0]) oGui.addDir(SITE_IDENTIFIER, MOVIE_HD[1], 'Films (HD)', 'hd.png', oOutputParameterHandler) oOutputParameterHandler = cOutputParameterHandler() oOutputParameterHandler.addParameter('siteUrl', MOVIE_GENRES[0]) oGui.addDir(SITE_IDENTIFIER, MOVIE_GENRES[1], 'Films (Genres)', 'genres.png', oOutputParameterHandler) oGui.setEndOfDirectory() def showSearch(): oGui = cGui() sSearchText = oGui.showKeyBoard() if (sSearchText != False): showMovies(sSearchText) oGui.setEndOfDirectory() return def showGenres(): oGui = cGui() oInputParameterHandler = cInputParameterHandler() sUrl = oInputParameterHandler.getValue('siteUrl') liste = [] liste.append(['Action', sUrl + 'action/']) liste.append(['Animation', sUrl + 'animation/']) liste.append(['Arts Martiaux', sUrl + 'arts-martiaux/']) liste.append(['Aventure', sUrl + 'aventure/']) liste.append(['Biopic', sUrl + 'biopic/']) liste.append(['Comédie', sUrl + 'comedie/']) liste.append(['Comédie Dramatique', sUrl + 'comedie-dramatique/']) liste.append(['Comédie Musicale', sUrl + 'comedie-musicale/']) liste.append(['Documentaire', sUrl + 'documentaire/']) liste.append(['Drame', sUrl + 'drame/']) liste.append(['Epouvante Horreur', sUrl + 'epouvante-horreur/']) liste.append(['Espionnage', sUrl + 'espionnage/']) liste.append(['Famille', sUrl + 'famille/']) liste.append(['Fantastique', sUrl + 'fantastique/']) liste.append(['Guerre', sUrl + 'guerre/']) liste.append(['Historique', sUrl + 'historique/']) liste.append(['Musical', sUrl + 'musical/']) liste.append(['Péplum', sUrl + 'peplum/']) liste.append(['Policier', sUrl + 'policier/']) liste.append(['Romance', sUrl + 'romance/']) liste.append(['Science Fiction', sUrl + 'science-fiction/']) liste.append(['Thriller', sUrl + 'thriller/']) liste.append(['Western', sUrl + 'western/']) for sTitle, sUrl in liste: oOutputParameterHandler = cOutputParameterHandler() oOutputParameterHandler.addParameter('siteUrl', sUrl) oGui.addDir(SITE_IDENTIFIER, 'showMovies', sTitle, 'genres.png', oOutputParameterHandler) oGui.setEndOfDirectory() def showMovies(sSearch=''): oGui = cGui() oParser = cParser() oInputParameterHandler = cInputParameterHandler() Nextpagesearch = oInputParameterHandler.getValue('Nextpagesearch') sUrl = oInputParameterHandler.getValue('siteUrl') if Nextpagesearch: sSearch = sUrl if sSearch: if URL_SEARCH[0] in sSearch: sSearch = sSearch.replace(URL_SEARCH[0], '') if Nextpagesearch: query_args = (('do', 'search'), ('subaction', 'search'), ('search_start', Nextpagesearch), ('story', sSearch)) else: query_args = (('do', 'search'), ('subaction', 'search'), ('story', sSearch)) data = urlEncode(query_args) oRequestHandler = cRequestHandler(URL_SEARCH[0]) oRequestHandler.setRequestType(cRequestHandler.REQUEST_TYPE_POST) oRequestHandler.addParametersLine(data) oRequestHandler.addParameters('User-Agent', UA) sHtmlContent = oRequestHandler.request() sHtmlContent = oRequestHandler.request() else: sUrl = oInputParameterHandler.getValue('siteUrl') oRequestHandler = cRequestHandler(sUrl) sHtmlContent = oRequestHandler.request() if sSearch: sPattern = '
.+?([^<]+).+?(?:Qualit|Version).+?">(.+?).+?<\/*strong>' else: sPattern = '