
    `i%3                     *   S SK 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Jr  S S	KJr  S
rSrSr\" 5       R+                  \5      rSr\S-   S4r\S-   S4rSrSr\S-   S4r\S-   S4rSrS rS r S r!SS jr"S r#S r$S r%S r&S r'g)    N)
cHosterGui)cGui)cInputParameterHandler)cOutputParameterHandler)cRequestHandler)cParser)progresssiteManager)cUtilotaku_attitudezOtaku-Attitudez(Animes, Drama et OST en DDL et Streamingz4https://forum.otaku-attitude.net/musicbox/playlists/zrecherche.html?cat=1&q=
showAnimeszrecherche.html?cat=2&q=)zhttp://loadzliste-dl-animes.phpzliste-dl-dramas.php)T
showGenresc                  j   [        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                  S[        S   5        U R	                  [
        [        S   S	S
U5        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siteUrlr   
showSearchu   Recherche (Animés)zsearch-animes.pngzRecherche (Dramas)zsearch-dramas.png   u   Animés (VOSTFR)z
animes.pngzDramas (VOSTFR)z
dramas.pngzMusicbox (OST)	music.png)r   r   addParameterURL_SEARCH_ANIMSaddDirSITE_IDENTIFIERURL_SEARCH_DRAMASANIM_VOSTFRSDRAMA_SERIES	OST_ANIMEsetEndOfDirectory)oGuioOutputParameterHandlers     N/home/kodi/.kodi/addons/plugin.video.vstream/resources/sites/otaku_attitude.pyr   r   %   s   6D57((4DQ4GHKK/DFY[rs((4Ea4HIKK/CEXZqr((LODKKa2DlTkl((LODKKa2C\Sjk((IaLAKK1/?Ofg    c                      [        5       n SS/SS/SS//n[        5       nU H:  u  p4UR                  S[        U-   S-   5        U R	                  [
        S	US
U5        M<     U R                  5         g )Nu   Animész1-animeDramasz6-dramau   Jeux Vidéou   7-jeu-vidéor   /showOstr   )r   r   r   OST_MAINr   r   r   )r   lister   sTitlesUrls        r    r   r   ;   su    6D#h	%:]N<[\E57,,Y4#8MNOYE\]  	r!   c                      [        5       n [        5       nUR                  S5      nU R                  5       nU(       a0  X#R	                  SS5      -   n[        U5        U R                  5         g g )Nr    +)r   r   getValueshowKeyBoardreplacer   r   )r   oInputParameterHandlerr)   sSearchTexts       r    r   r   H   sd    6D35!**95D##%K))#s334 	 r!   c           
      "   [        5       n[        5       nUR                  S5      nU (       a  U nU (       d-  SU;  a  UnSnO"UR                  S5      nUR                  S5      n[        U5      nUR	                  5         UR                  5       n[        5       nU (       aP  [        5       n	U R                  [        S   S5      n
U
R                  [        S   S5      n
U	R                  U
5      n
SnOS	nUR                  X{5      nUS   (       d  UR                  [        5        US   (       GaK  [        US   5      n[!        5       R#                  [$        5      n['        5       nUS    H  nUR)                  X5        UR+                  5       (       a    O[,        US   -   nUS   S
-   nUS   R                  SS5      R                  SS5      R                  SS5      nUS   nU (       a  W	R/                  W
U5      (       d  M  UR1                  SU5        UR1                  SU5        UR1                  SU5        UR1                  SU5        UR3                  [        SUSUUU5        M     UR5                  U5        U (       d  [7        W5      S-   n['        5       nUR1                  SWS-   [9        U5      -   5        UR1                  SU5        UR1                  SU5        UR;                  [        SS[9        U5      -   U5        UR=                  5         g g )Nr   scrollr   memorisedUrlPager    zahref="([^"]+)" class="liste_dl"><img src="([^"]+)".+?alt=".+?strong>([^<]+)<.+?all">([^<]+)</.+?>zThref="([^"]+)".+?><img src="([^"]+)".+?alt=".+?strong>([^<]+)<.+?all">([^<]+)<br.+?>|verifypeer=false   z-...z...!z !   sMovieTitlesThumbsDescshowEpisodesz	?&scroll=r   Page )r   r   r-   r   
disableSSLrequestr   r   r/   r   r   	CleanNameparseaddTextr   lenr	   VScreate	SITE_NAMEr   VSupdate
iscanceledURL_MAINCheckOccurencer   addAnimeVScloseintstraddNextr   )sSearchr   r0   r)   r4   r5   oRequestHandlersHtmlContentoParseroUtilr1   sPatternaResulttotal	progress_r   aEntrysUrl2r<   r(   r=   s                        r    r   r   U   s   6D35!**95D 4LD1::>JL)226:D%d+O "**,LiGoo&7&:B?!))*:1*=rBook2vimmL3G1:_%qzzGAJJ''	2	"9";ajFy0##%%vay(EAY!44FAY&&vr2::5"EMMcSWXF1IE ++K@@#00EB#00G#006B#00%@MM/>62vuVmn' !* 	)$4y1}"9";,,Y{8RUXY]U^8^_,,^\J,,VT:_lGc$i4GI`a  r!   c            
         [        5       n [        5       nUR                  S5      nSU;  a  UnSnO"UR                  S5      nUR                  S5      n[        U5      nUR	                  5         UR                  5       n[        5       nSnUR                  Xh5      n	U	S   (       d  U R                  [        5        U	S   (       Ga|  [        U	S   5      n
[        5       R                  [        5      n[        5       nU	S    H  nUR                  X5        UR!                  5       (       a    OtUS   nUS   R#                  SS	5      nUS
   nUR%                  SU5        UR%                  SU5        UR%                  SU5        U R'                  [        SUS	US	U5        M     UR)                  U5        [+        U5      S-   n[        5       nUR%                  SUS-   [-        U5      -   5        UR%                  SU5        UR%                  SU5        U R/                  [        SS[-        U5      -   U5        U R1                  5         g g )Nr   pager   r4   r5   zH<div class='plWrapper'>.+?href='([^']+)' title='([^']+)'.+?src="([^"]+)"r   u   - Artiste non définir6   r8   r;   r<   	showMusicz?page=r%   r?   )r   r   r-   r   r@   rA   r   rC   rD   r   rE   r	   rF   rG   r   rH   rI   r/   r   rL   rM   rN   rO   rP   r   )r   r0   r)   r4   r5   rR   rS   rT   rV   rW   rX   rY   r   rZ   r[   r(   r<   s                    r    r%   r%      s
   6D35!**95DT-66~F%..v6%d+O "**,LiG\HmmL3G1:_%qzzGAJJ''	2	"9";ajFy0##%%1IEAY&&'>CFAYF#00EB#00G#006BMM/;FBPgh ! 	)$4y1}"9";,,Yx8ORUVZR[8[\,,^\J,,VT:_i3t91DF]^ ; r!   c            
         [        5       n [        5       n[        5       nUR                  S5      nUR                  S5      nUR                  S5      nUR                  S5      n[	        U5      nUR                  5         UR                  5       n[        R                  " SU5      R                  S5      n	Sn
UR                  X5      nUS   (       d  U R                  [        5        US   (       Ga  [        5       n[        US   S	 S
9 GHk  nUS   nSU;   d  SU;   d  SU;   a  [        R                  " SSU5      nOSU;   a  [        R                  " SSU5      nOuSU;   a  [        R                  " SSU5      nOVSU;   a  [        R                  " SSU5      nO7SU;   a  [        R                  " SSU5      nO[        R                  " SSU5      nSUS   -   S-   U-   nU< SU< S3nUS   nUR!                  SU5        UR!                  SU5        UR!                  SU5        UR!                  SU5        UR!                  SU	5        UR!                  S U5        U R#                  [        S!US"XVU5        GMn     U R%                  5         g )#Nr   r;   r<   r=   zfiche-.+?-(\d+)-.+?.htmlr   z]class="(?:download cell_impaire|download)" id="([^"]+)".+?(\d+).+?class="cell".+?>([^<]+)</tdr   c                     U S   $ )Nr    )rW   s    r    <lambda>showEpisodes.<locals>.<lambda>   s    WQZr!   )keyr8   u   1920×u   1440×u   1904×u   (\d+×\d+)px1080Pu   1728×800Pu   1280×720Pu   1024×600Pu   480×360P480PEr+   z []sResserieID	idEpisodeshowHostersr6   )r   r   r   r-   r   r@   rA   researchgrouprC   rD   r   r   sortedsubr   
addEpisoder   )r   rT   r0   r)   r;   r<   r=   rR   rS   rn   rV   rW   r   rZ   sQualr(   sDisplayTitlero   s                     r    r>   r>      sG   6DiG35!**95D(11-@K#,,X6F"++G4E%d+O "**,L ii2D9??BGnHmmL3G1:_%qzz"9";WQZ-GHF1IE 5 H$5U9J~w>U"~vu=U"~vu=U"~vu=E!~vu=~vu=6!9_s*[8F)/7Mq	I#00G#00DA#006B#00?#00GD#00iHOOO]M2v^uv? IB 	r!   c            
      f   [        5       n [        5       nUR                  S5      nUR                  S5      n[        5       n[	        U5      nUR                  5         UR                  5       nSnUR                  Xg5      nUS   (       d  U R                  [        5        US   (       az  [        5       n	US    Hg  n
U
S   S-   U
S   -   nU
S   nU	R                  SU5        U	R                  S	U5        U	R                  SU5        U R                  [        S
USUSU	5        Mi     U R                  5         g )Nr   r<   zV<div data-track-file="([^"]+)".+?data-track-name="([^"]+)".+?"><span.+?>([^<]+)</span>r   r   r8   r+   r;   mp3UrlshowMp3r6   )r   r   r-   r   r   r@   rA   rC   rD   r   r   r   rv   r   )r   r0   r)   r<   rT   rR   rS   rV   rW   r   rZ   r(   rz   s                r    r^   r^     s   6D35!**95D#,,X6FiG%d+O "**,LgHmmL3G1:_%qz"9";ajFAY_vay0FAYF#00G#006B#006BOOOYFBPgh ! 	r!   c                  r   [        5       n [        5       nUR                  S5      nUR                  S5      nUR                  S5      n[        5       R	                  S5      nU(       a@  UR                  U5        UR                  U5        [        5       R                  XUS-   U5        U R                  5         g )Nrz   r;   r<   .m3u8r7   )	r   r   r-   r   checkHostersetDisplayNamesetFileName
showHosterr   )r   r0   rz   r;   r<   oHosters         r    r{   r{   0  s    6D35#,,X6F(11-@K#,,X6F
 l&&w/G{+K(v8K/KVTr!   c                  (   [        5       n [        5       nUR                  S5      nUR                  S5      nUR                  S5      nUR                  S5      nUR                  S5      nSnSU;   a  [        S-   U-   S	-   U-   S
-   nOSU;   a  [        S-   U-   S	-   U-   S
-   n[	        5       R                  S5      nU(       a@  UR                  U5        UR                  U5        [	        5       R                  XUS-   U5        U R                  5         g )Nr   r;   r<   rn   ro   r6   zfiche-animezlaunch-download-1-z-ddl-z.htmlzfiche-dramazlaunch-download-2-r}   r7   )
r   r   r-   rJ   r   r~   r   r   r   r   )	r   r0   r)   r;   r<   rn   ro   
sHosterUrlr   s	            r    rp   rp   C  s   6D35!**95D(11-@K#,,X6F$--i8G&//<IJ 44w>H9TW^^
	$	 44w>H9TW^^
l&&w/G{+K(z<O/OQWXr!   )r6   )(rq   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.comaddonr	   r
   resources.lib.utilr   r   rG   	SITE_DESC
getUrlMainrJ   r&   r   r   FUNCTION_SEARCH
ANIM_ANIMSr   r   r   r   r   r   r   r%   r>   r^   r{   rp   ra   r!   r    <module>r      s   
 
 / & N P @ ( 8 $ #	6	=##O4A88,G  99<H  
00,?00,? 	,

G!T4!n9x<&r!   