Advertisement
Guest User

Untitled

a guest
Jul 17th, 2015
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 9.43 KB | None | 0 0
  1. #-*- coding: utf-8 -*-
  2. #Venom.
  3. from resources.lib.gui.hoster import cHosterGui
  4. from resources.lib.handler.hosterHandler import cHosterHandler
  5. from resources.lib.gui.gui import cGui
  6. from resources.lib.gui.guiElement import cGuiElement
  7. from resources.lib.handler.inputParameterHandler import cInputParameterHandler
  8. from resources.lib.handler.outputParameterHandler import cOutputParameterHandler
  9. from resources.lib.handler.requestHandler import cRequestHandler
  10. from resources.lib.config import cConfig
  11. from resources.lib.parser import cParser
  12. from resources.lib.util import cUtil
  13. import re,urllib2,urllib
  14. #import urlresolver
  15.  
  16. SITE_IDENTIFIER = 'full_streamvk_com'
  17. SITE_NAME = 'Full-streamvk.com'
  18. SITE_DESC = 'Film Serie et Anime en Streaming HD - Vk.Com - Netu.tv - ExaShare - YouWatch'
  19.  
  20. URL_MAIN = 'http://full-streamvk.com'
  21.  
  22. MOVIE_NEWS = ('http://full-streamvk.com/films-streamingvk-vf/', 'showMovies')
  23. MOVIE_GENRES = (True, 'showGenre')
  24.  
  25. URL_SEARCH = ('', 'showMovies')
  26. FUNCTION_SEARCH = 'showMovies'
  27.  
  28.  
  29. def load():
  30.     oGui = cGui()
  31.    
  32.     oOutputParameterHandler = cOutputParameterHandler()
  33.     oOutputParameterHandler.addParameter('siteUrl', 'http://venom/')
  34.     oGui.addDir(SITE_IDENTIFIER, 'showSearch', 'Recherche', 'search.png', oOutputParameterHandler)
  35.  
  36.     oOutputParameterHandler = cOutputParameterHandler()
  37.     oOutputParameterHandler.addParameter('siteUrl', MOVIE_NEWS[0])
  38.     oGui.addDir(SITE_IDENTIFIER, 'showMovies', 'Films Nouveautees', 'news.png', oOutputParameterHandler)
  39.    
  40.     oOutputParameterHandler = cOutputParameterHandler()
  41.     oOutputParameterHandler.addParameter('siteUrl', 'http://venom')
  42.     oGui.addDir(SITE_IDENTIFIER, 'showGenre', 'Films Genre', 'icon.png', oOutputParameterHandler)
  43.            
  44.     oGui.setEndOfDirectory()
  45.  
  46. def showSearch():
  47.     oGui = cGui()
  48.  
  49.     sSearchText = oGui.showKeyBoard()
  50.     if (sSearchText != False):
  51.         showMovies(sSearchText)
  52.         oGui.setEndOfDirectory()
  53.         return  
  54.  
  55. def showGenre():
  56.     oGui = cGui()
  57.     oInputParameterHandler = cInputParameterHandler()
  58.     sUrl = oInputParameterHandler.getValue('siteUrl')
  59.  
  60.     liste = []
  61.     liste.append( ['Action','http://full-streamvk.com/films-streamingvk-vf/streaming-action/'] )
  62.     liste.append( ['Animation','http://full-streamvk.com/films-streamingvk-vf/streaming-animation/'] )
  63.     liste.append( ['Arts Martiaux','http://full-streamvk.com/films-streamingvk-vf/streaming-arts-martiaux/'] )
  64.     liste.append( ['Aventure','http://full-streamvk.com/films-streamingvk-vf/streaming-aventure/'] )
  65.     liste.append( ['Biographique','http://full-streamvk.com/films-streamingvk-vf/streaming-biopic/'] )
  66.     liste.append( ['Comedie','http://full-streamvk.com/films-streamingvk-vf/streaming-comedie/'] )
  67.     liste.append( ['Musical','http://full-streamvk.com/films-streamingvk-vf/streaming-musical/'] )
  68.     liste.append( ['Documentaire','http://full-streamvk.com/films-streamingvk-vf/streaming-documentaire/'] )
  69.     liste.append( ['Dramatique','http://full-streamvk.com/films-streamingvk-vf/streaming-drame/'] )
  70.     liste.append( ['Horreur','http://full-streamvk.com/films-streamingvk-vf/streaming-horreur/'] )
  71.     liste.append( ['Espionnage','http://full-streamvk.com/films-streamingvk-vf/streaming-espionnage/'] )
  72.     liste.append( ['Famille','http://full-streamvk.com/films-streamingvk-vf/streaming-famille/'] )
  73.     liste.append( ['Fantastique','http://full-streamvk.com/films-streamingvk-vf/streaming-fantastique/'] )
  74.     liste.append( ['Guerre','http://full-streamvk.com/films-streamingvk-vf/streaming-guerre/'] )
  75.     liste.append( ['Historique','http://full-streamvk.com/films-streamingvk-vf/streaming-historique/'] )
  76.     liste.append( ['Polcicier','http://full-streamvk.com/films-streamingvk-vf/streaming-policier/'] )
  77.     liste.append( ['Romance','http://full-streamvk.com/films-streamingvk-vf/streaming-romance/'] )
  78.     liste.append( ['Thriller','http://full-streamvk.com/films-streamingvk-vf/streaming-thriller/'] )
  79.     liste.append( ['Science-Fiction','http://full-streamvk.com/films-streamingvk-vf/streaming-science-fiction/'] )
  80.     liste.append( ['Manga','http://full-streamvk.com/films-streamingvk-vf/streaming-manga/'] )
  81.     liste.append( ['Walt Disney','http://full-streamvk.com/films-streamingvk-vf/streaming-walt-disney/'] )
  82.     liste.append( ['Western','http://full-streamvk.com/films-streamingvk-vf/streaming-western/'] )
  83.                
  84.     for sTitle,sUrl in liste:
  85.        
  86.         oOutputParameterHandler = cOutputParameterHandler()
  87.         oOutputParameterHandler.addParameter('siteUrl', sUrl)
  88.         oGui.addDir(SITE_IDENTIFIER, 'showMovies', sTitle, 'genres.png', oOutputParameterHandler)
  89.        
  90.     oGui.setEndOfDirectory()
  91.    
  92. def showMovies(sSearch=''):
  93.     oGui = cGui()
  94.     if sSearch:
  95.         #on redecode la recherhce codé il y a meme pas une seconde par l'addon
  96.         sSearch = urllib2.unquote(sSearch)
  97.        
  98.         query_args = { 'do' : 'search' , 'subaction' : 'search' , 'story' : str(sSearch) , 'x' : '0', 'y' : '0'}
  99.        
  100.         data = urllib.urlencode(query_args)
  101.         headers = {'User-Agent' : 'Mozilla 5.10'}
  102.         url = 'http://www.full-streamvk.com/index.php?do=search=' + sSearch
  103.         request = urllib2.Request(url,data,headers)
  104.      
  105.         try:
  106.             reponse = urllib2.urlopen(request)
  107.         except URLError, e:
  108.             print e.read()
  109.             print e.reason
  110.      
  111.         sHtmlContent = reponse.read()
  112.         sPattern = '<div class="img-block border-2">.*?<img src="(.*?)" alt="(.*?)" class="img-poster border-2 shadow-dark7" width="151" height="215" />.+?<a href="(http://www.full-streamvk.*?)" title'
  113.     else:
  114.         oInputParameterHandler = cInputParameterHandler()
  115.         sUrl = oInputParameterHandler.getValue('siteUrl')
  116.         oRequestHandler = cRequestHandler(sUrl)
  117.         sHtmlContent = oRequestHandler.request()
  118.         #sPattern = '<div class="img-block border-2">.*?<img src="(.*?)" alt="(.*?)".*?<a href="(.*?)" title'
  119.         sPattern = '<div class="img-block border-2">.*?<img src="(.*?)" alt="(.*?)".*?<a href="(http://www.full-streamvk.*?)" title'
  120.        
  121.     sHtmlContent = sHtmlContent.replace('<span class="likeThis">', '')
  122.     oParser = cParser()
  123.     aResult = oParser.parse(sHtmlContent, sPattern)
  124.  
  125.     if (aResult[0] == True):
  126.         total = len(aResult[1])
  127.         dialog = cConfig().createDialog(SITE_NAME)
  128.         for aEntry in aResult[1]:
  129.             cConfig().updateDialog(dialog, total)
  130.             if dialog.iscanceled():
  131.                 break
  132.            
  133.            
  134.             #sTitle = aEntry[2].decode('latin-1').encode("utf-8")
  135.             #sThumbnail = 'http:'+str(aEntry[2])
  136.             #sUrl = URL_MAIN+str(aEntry[1])
  137.            
  138.             sThumbnail = str(aEntry[0])
  139.             if not 'full-streamvk' in sThumbnail:
  140.                   sThumbnail = 'http://www.full-streamvk.com' + sThumbnail
  141.             #print sThumbnail
  142.  
  143.      
  144.  
  145.  
  146.             oOutputParameterHandler = cOutputParameterHandler()
  147.             oOutputParameterHandler.addParameter('siteUrl', str(aEntry[2]))
  148.             oOutputParameterHandler.addParameter('sMovieTitle', str(aEntry[1]))
  149.             oOutputParameterHandler.addParameter('sThumbnail', sThumbnail)            
  150.             oGui.addMovie(SITE_IDENTIFIER, 'showHosters', aEntry[1], '', sThumbnail, '', oOutputParameterHandler)
  151.            
  152.         cConfig().finishDialog(dialog)
  153.  
  154.         sNextPage = __checkForNextPage(sHtmlContent)
  155.         print sNextPage
  156.         if (sNextPage != False):
  157.             oOutputParameterHandler = cOutputParameterHandler()
  158.             oOutputParameterHandler.addParameter('siteUrl', sNextPage)
  159.             oGui.addDir(SITE_IDENTIFIER, 'showMovies', '[COLOR teal]Next >>>[/COLOR]', 'next.png', oOutputParameterHandler)
  160.  
  161.              
  162.     if not sSearch:
  163.         oGui.setEndOfDirectory()
  164.                
  165. def __checkForNextPage(sHtmlContent):
  166.     sPattern = 'href="([^<>]+?)">([Suivant >>])<\/a>'
  167.     sPattern = '<a class="btn btn-default" href="(.+?)">[Suivant >>]<\/a>'
  168.     oParser = cParser()
  169.     aResult = oParser.parse(sHtmlContent, sPattern)
  170.  
  171.     if (aResult[0] == True):
  172.         return aResult[1][0]
  173.  
  174.     return False
  175.        
  176.    
  177. def showHosters():
  178.     oGui = cGui()
  179.     oInputParameterHandler = cInputParameterHandler()
  180.     sUrl = oInputParameterHandler.getValue('siteUrl')
  181.     sMovieTitle = oInputParameterHandler.getValue('sMovieTitle')
  182.     sThumbnail = oInputParameterHandler.getValue('sThumbnail')
  183.  
  184.     oRequestHandler = cRequestHandler(sUrl)
  185.     sHtmlContent = oRequestHandler.request();
  186.     sHtmlContent = sHtmlContent.replace('src="http://full-streamvk.com/','')
  187.  
  188.  
  189.     sPattern = '<div class="fstory-video-block" id=".+?">.+?<iframe.+?src=[\'|"](.+?)[\'|"]'
  190.     oParser = cParser()
  191.     #print aResult
  192.     aResult = oParser.parse(sHtmlContent, sPattern)
  193.    
  194.     if (aResult[0] == True):
  195.         total = len(aResult[1])
  196.         dialog = cConfig().createDialog(SITE_NAME)
  197.         for aEntry in aResult[1]:
  198.             cConfig().updateDialog(dialog, total)
  199.             if dialog.iscanceled():
  200.                 break
  201.            
  202.             sHosterUrl = str(aEntry)
  203.             oHoster = cHosterGui().checkHoster(sHosterUrl)
  204.             if (oHoster != False):
  205.                 oHoster.setDisplayName(sMovieTitle)
  206.                 oHoster.setFileName(sMovieTitle)
  207.                 cHosterGui().showHoster(oGui, oHoster, sHosterUrl, sThumbnail)
  208.    
  209.         cConfig().finishDialog(dialog)
  210.  
  211.     oGui.setEndOfDirectory()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement