
    `i=(                        S SK JrJr  S SKJr  S SKJr  S SKJr  S SK	J
r
  S SKJr  S SKJr  S SKJr  S	rS
rSr\" 5       R)                  \5      rSrSrSr\S    S4r\S    S4rS rS rS rSS jrS rS r S r!S r"S r#g)    )addonsiteManager)
cHosterGui)cGui)cInputParameterHandler)cOutputParameterHandler)cRequestHandler)cParser)cUtil	animesamaz
Anime Samau   Animés - Films et séries)Tload)zcatalogue/?genre%5B%5D=%s
showGenres)zcatalogue/?search=
showSeriesr   c                     [        5       n [        5       nUR                  SS5        U R                  [        SSSU5        UR                  S[
        S   5        U R                  [        [
        S   SS	U5        U R                  5         g )
NsiteUrlzhttp://venom/
showSearch	Recherchez
search.pngr      z	Par genre
genres.png)r   r   addParameteraddDirSITE_IDENTIFIERANIM_GENRESsetEndOfDirectory)oGuioOutputParameterHandlers     I/home/kodi/.kodi/addons/plugin.video.vstream/resources/sites/animesama.pyr   r      sp    6D57((ODKK{LJab((KNCKKQlLcd    c                      [        5       n U R                  5       nU(       a6  [        S   UR                  5       -   n[	        U5        U R                  5         g g )Nr   )r   showKeyBoard
URL_SEARCHstripr   r   )r   sSearchTextsUrls      r   r   r   )   sM    6D##%K!}{00224 	 r   c                     [        5       n [        5       nUR                  S5      n/ SQn[        5       nU HB  nX%R	                  SS5      -  nUR                  SU5        U R                  [        SUSU5        MD     U R                  5         g )Nr   )5ActionAdolescenceu   AmitiéAmourzArts martiaux
AssassinatzAutre mondeAventureCombatsu   ComédieCrimeu   DémonsDonghuaDrameEcchiEcoleFamilleFantastiqueFantasyGhibliGuerreHarem
HistoriqueHorreurIsekaiJeuxJoseiMagieMechas	MilitaireMonstresMusiqueu   Mystère	Nostalgie	PolitiquePsychologique	QuotidienRomanceu
   SamouraïszSchool LifezScience-fictionSeinenu   Shôjou   ShônenzSlice of LifeSport
SurnaturelThrillerTournoisTravailVampires	VengeancezVoyage temporel z%20r   r   )	r   r   getValuer   replacer   r   r   r   )r   oInputParameterHandlerr   lister   sGenrer$   s          r   r   r   4   s    6D35$--i8GRE 67U33,,Y=O\6<I`a 
 	r   c           
      x   [        5       n[        5       nU (       aB  [        5       nU R                  S5      S   nUR	                  U5      nU R                  SS5      nO<[        5       nUR                  S5      =pWUR                  S5      nU(       a  USU-   -  n[        [        U-   5      n	U	R                  5       n
SnUR                  X5      nUS	   (       GaI  [        5       nUS
    H  nUS	   nUS
   nUS   nUS   nSU;  a  SU;  a  M%  UR                  S5      (       d  [        S S U-   nU (       a  WR                  WU5      (       d  Mg  UR                  SU5        UR                  SU5        UR                  SU5        SU;   a  UR!                  ["        SUSUSU5        M  UR%                  ["        SUSUSU5        M     ['        U
5      nU(       aI  [        5       nUR                  SW5        UR                  SU5        UR)                  ["        SSU-   U5        U (       d  UR+                  5         g g )N=rN   +r   sPagez&page=zVcard-base"> *<a href="([^"]+).+?src="([^"]+)" *alt="([^"]+).+?>Types<.+?value">([^<]+)r   r         FilmAnimehttpsMovieTitlesThumb
showSaison
series.png z
animes.pngr   zPage )r   r
   r   split	CleanNamerP   r   rO   r	   URL_MAINrequestparser   
startswithCheckOccurencer   addMovier   addAnime__checkForNextPageaddNextr   )sSearchr   oParseroUtilr#   r$   rQ   r   rX   oRequestHandlersHtmlContentsPatternaResultr   aEntrysUrl2r_   sTitlesType	sNextPages                       r   r   r   L   s   6DiGmmC(,ook2sC(!7!9/88CC&//8Hu$$D%ho6O"**,LgHmmL3Gqzz"9";ajF1IEAYFAYF1IEU"we';##F++}u,e ++K@@#00EB#00G#006Bo|V\SY[]_vwo|V\SY[]_vw1 !4 '|4	&=&?##00GD#00)DLL,)8KMde  r   c                 d    [        5       nSnUR                  X5      nUS   (       a  US   S   $ S$ )Nz3Pagination.+?mt-5 bg-sky-900.+?<a href='\?.+?(\d+)'r   r   F)r
   rg   )rr   ro   rs   rt   s       r   rl   rl      s5    iGEHmmL3G#AJ71:a=1E1r   c            
         [        5       n [        5       nUR                  S5      nUR                  S5      nUR                  S5      n[        U5      nUR	                  5       n[        5       nSnUR                  Xh5      n	[        5       R                  S5      n
U	S   (       a  [        5       n[        U	S   5       H  nUS   nUS   nUS:X  a  M  S	nS
U;  a  SnUR                  SSU
-  5      S-   nUS-   U-   nUnUR                  SUS-   U-   5        UR                  SU5        UR                  SU5        U(       a  U R                  [        SUSUSU5        M  U R                  [        SUSUSU5        M     U R!                  5         g )Nr   r^   r_   z!panneauAnime\("([^"]+)", "([^"]+)
deco_colorr   r   urlFSaisonTr[   z[COLOR %s][Film][/COLOR] z - rN   /showEpisodera   rb   )r   r   rO   r	   rf   r
   rg   r   
getSettingr   sortedrP   r   rj   r   	addSeasonr   )r   rQ   r$   r^   r_   rq   rr   ro   rs   rt   
sDecoColorr   ru   sSaison
sUrlSaisonbMoviesDisplayTitlerw   s                     r   r`   r`      s   6D35!**95D(11-@K#,,X6F%d+O"**,LiG2HmmL3G##L1Jqz"9";WQZ(FQiGJU"Fw&!//&2MPZ2Z[^cc#cMK7M F#00D3J<ST#00G#006Bo}m\[aceg~}l\bdfh  A+ ). 	r   c                      [        5       n [        5       nUR                  S5      nUR                  S5      n[        UR	                  SS5      U5        [        UR	                  SS5      U5        U R                  5         g )Nr   r^   z/vostfrz/vf)r   r   rO   
addEpisoderP   r   )r   rQ   r$   r^   s       r   r   r      sh    6D35!**95D(11-@Kt||Iu-{;t||E9-{;r   c           
      f    [        U 5      nUR                  5       n[        5       n[        5       nU R	                  S5      nUS   nUS   R                  5       nSn	UR                  X95      n
U
S   (       Ga3  U SU
S   S   -   -  n [        U 5      nUR                  5       nSn	UR                  X95      n
U
S   (       a  [        5       n[        U
S   S   5      n[        [        U5      5       H  nUR                  SU 5        UR                  S	U5        S
U;   aT  SXUS-   4-  =pUSU-  -  nUR                  SU5        UR                  SU5        UR                  [        SUSSSU5        M  U=pUSU-  -  nUR                  SU5        UR                  [        SUSSU5        M     g g g !    g = f)Nr   rV   z:<script type="text/javascript" src=['"]([^'"]+)['"] *deferr   r   var eps\d = (\[.+?\]+)r   sLangsaisonz	%s %s E%dz (%s)r^   sEpisodeshowHostersra   rb   )r	   rf   r   r
   rc   upperrg   r   evalrangelenr   r   r   addLink)r$   r^   rq   rr   r   ro   datar   r   rs   rt   r   episodesnumEpr   rw   s                   r   r   r      s   )$/&..0 6DiG::c?D2hGHNNENHmmL3Gqzzgajm##)$/&..0+--71:&=&?#GAJqM*HH.'44YE'44WeDw&-8KRWZ[R[;\-\\M!Wu_4M+88O+88UKOOO]MS_aceg  jA  B-88M!Wu_4M+88OLL-P\^`byz /  s   F, ,F0c                  f   [        5       n [        5       nUR                  S5      nUR                  S5      nUR                  S5      n[        U5      nUR	                  5       n[        5       nSnUR                  Xh5      n	U	S   (       a  [        U5      S-
  n
U	S    H  n[        U5      nU
[        U5      :  d  M  X   n[        5       R                  U5      nU(       d  ME  UR                  U5        UR                  U5        [        5       R                  XU5        M     U R                  5         g )Nr   r^   r   r   r   r   )r   r   rO   r	   rf   r
   rg   intr   r   r   checkHostersetDisplayNamesetFileName
showHosterr   )r   rQ   r$   r^   r   rq   rr   ro   rs   rt   r   entryr   
sHosterUrloHosters                  r   r   r      s   6D35!**95D(11-@K%..z:H%d+O"**,LiG'HmmL3GqzHaQZEE{Hs8}$%_
$,22:>7**;7''4L++D:F   	r   N)rb   )$resources.lib.comaddonr   r   resources.lib.gui.hosterr   resources.lib.gui.guir   +resources.lib.handler.inputParameterHandlerr   ,resources.lib.handler.outputParameterHandlerr   $resources.lib.handler.requestHandlerr	   resources.lib.parserr
   resources.lib.utilr   r   	SITE_NAME	SITE_DESC
getUrlMainre   
ANIM_ANIMSr   r!   URL_SEARCH_ANIMSURL_SEARCH_MOVIESr   r   r   r   rl   r`   r   r   r    r   r   <module>r      s    6 / & N P @ ( $ 	(	=##O4
91
qM<0 ]L1 
0:!z2(V	){Xr   