Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
ó
Ch-_c@síddlmZddlmZmZmZddlmZm	Z	m
Z
ddlmZddl
mZddlmZddlZyddlZWnek
r³ddlZnXd„Zd	efd
„ƒYZdefd„ƒYZdS(
iÿÿÿÿ(tTranslateTXT(t	CHostBasetCBaseHostClasstCDisplayListItem(tprintDBGtprintExctbyteify(tMoonwalkParser(tHdgoccParser(tstrwithmetaNcCsdS(Nshttp://kinotan.ru/((((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytgettytulstKinotancBsÑeZd„Zidd„Zd„Zd„Zd„Zd„Zd„Z	d„Z
d„Zd	„Zdd
„Z
dd„Zd
„Zd„Zd„Zd„Zd„Zd„Zd„Zdddd„ZRS(cCstj|idd6dd6ƒtƒ|_tƒ|_idd6dd6|_t|jƒ|_|jj	id	d
6ƒd|_
d|_id
d6tdƒd6|j
dƒd6idd6tdƒd6|j
dƒd6idd6tdƒd6|j
dƒd6idd6tdƒd6td6idd6tdƒd6g|_idd6tdƒd6|j
dƒd6id d6td!ƒd6|j
dƒd6id"d6td#ƒd6|j
dƒd6id$d6td%ƒd6|j
dƒd6id&d6td'ƒd6|j
dƒd6g|_i|_dS((NRthistorysKinotan.cookietcookiesMozilla/5.0s
User-Agents	text/htmltAccepttXMLHttpRequestsX-Requested-Withshttp://kinotan.ru/s/http://ipic.su/img/img7/fs/logo2.1460442551.pngtcat_serialstcategorytSerialsttitles/serial/turltcat_tv_showssTV showss	/tv-shou/tcat_multtCartoonss/multserial/tsearchtSearchtsearch_itemtsearch_historysSearch historytgenresGenre selectiontcountrys
By countryttranstTranslationstseltCollectionstyearssBy Year(Rt__init__RtmoonwalkParserRthdgocctHEADERtdicttAJAX_HEADERtupdatetMAIN_URLtDEFAULT_ICON_URLt_t
getFullUrltTruetMAIN_CAT_TABtSERIALS_CAT_TABtcacheContentTab(tself((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyR#s&		''' ''''0cCs(|jj|||ƒ\}}||fS(N(tcmtgetPage(R2Rtparamst	post_datatststdata((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyR47scCsøtdƒ|j|dƒ\}}|s-dS|jjj|ddtƒd}tjdƒj|ƒ}x$|D]}|ddkrnqnqnqnWt	|ƒ}|j
i|d6|dd6|j|dƒd6ƒ|j|ƒ|j
|jidd
6ƒdS(NsKinotan.listCategoriesRs<ul class="head-menu">s</ul>is,<a[^"]+?href="([^"]*?)"[^>]*?>(.*?)</a></li>is	/novosti/shttp://kinotan.ru/skoro/s(http://kinotan.ru/index.php?do=orderdescRRtname(s	/novosti/shttp://kinotan.ru/skoro/s(http://kinotan.ru/index.php?do=orderdesc(RR4R3tphtgetDataBeetwenMarkerstFalsetretcompiletfindallR'R)R-taddDirtlistsTabR/(R2tcItemRR7R8tdatactitemR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistMainMenu;s
"
	
3
cCsÈtdƒ|j|dƒ\}}|s-dS|jjj|ddtƒd}tjdƒj|ƒ}xZ|D]R}t	|ƒ}|j
i|d6|dd6|j|d	ƒd6ƒ|j|ƒqnWdS(
NsKinotan.listGenreRs<ul class="main-menu clearfix">s</ul>is&<a[^"]+?href="([^"]*?)">(.*?)</a></li>RRi(
RR4R3R:R;R<R=R>R?R'R)R-R@(R2RBRR7R8tdatagRDR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt	listGenreJs
"
3cCsÌtdƒ|j|dƒ\}}|s-dS|jjj|ddtƒd}tjdƒj|ƒ}x^|D]V}t	|ƒ}|j
i|d6|dd6|j|d	dƒd6ƒ|j|ƒqnWdS(
NsKinotan.listCountryRs<div class="navigright2">s</div>is&href="(/xf[^"]*?)"[^>]+?>(.*?)</a><br>RRi(
RR4R3R:R;R<R=R>R?R'R)R-R@(R2RBRR7R8tdatacnRDR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistCountryUs
"
7cCsÌtdƒ|j|dƒ\}}|s-dS|jjj|ddtƒd}tjdƒj|ƒ}x^|D]V}t	|ƒ}|j
i|d6|dd6|j|d	dƒd6ƒ|j|ƒqnWdS(
NsKinotan.listTransRs<div class="navigright3">s</div>is&href="(/xf[^"]*?)"[^>]+?>(.*?)</a><br>RRi(
RR4R3R:R;R<R=R>R?R'R)R-R@(R2RBRR7R8tdatatrRDR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt	listTrans`s
"
7c	CsÌtdƒ|j|dƒ\}}|s-dS|jjj|ddtƒd}tjdƒj|ƒ}x^|D]V}t	|ƒ}|j
i|d6|dd6|j|d	dƒd6ƒ|j|ƒqnWdS(
NsKinotan.listSelRs<div class="navigright">s</div>is&href="(/xf[^"]*?)"[^>]+?>(.*?)</a><br>RRi(
RR4R3R:R;R<R=R>R?R'R)R-R@(	R2RBRR7R8tdata1tdataslRDR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistSelks
"
7c	CsÐtdƒ|j|dƒ\}}|s-dS|jjj|ddtƒd}tjdƒj|ƒ}xb|D]Z}t	|ƒ}|j
i|d6|dd d	6|j|d
dƒd6ƒ|j|ƒqnWdS(NsKinotan.listYearsRs<div class="navigright">s</div>is%href="(/t[^"]*?)"[^>]+?>(.*?)</a><br>RiþÿÿÿRi(
RR4R3R:R;R<R=R>R?R'R)R-R@(	R2RBRR7R8RLtdatayRDR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt	listYearsvs
"
;cCs…tdƒ|djdƒ}|d}t|ƒdkr[|jddƒ}|j|}n|jddƒ}|dkrŠ|d|7}n|jd	dƒ}|j|i|ƒ\}}	|sÁdSt}
d
|d|	krät}
n|j	j
j|	ddtƒd}	|	jdƒ}	x|	D]}|j	j
j|d
ƒd}|j	j
j|dƒdd}|j
|ƒ}|j	j
j|dƒd}
|j	j
j|dƒd}|j	j
j|dƒd}|d|}t|ƒ}|ji|d6|
d6|j
|ƒd6|d6|j
|ƒd6ƒ|j|ƒqW|
rt|ƒ}|jitdƒd6|jddƒdd6ƒ|j|ƒndS(NsKinotan.listItemsRt?iiRtpagespage/%s/R6s	/page/%s/s<div class="short-item">s</div></div>s<h3>.*"(.*?)">.*</a>ssrc="(.*?)"s<h3>.*".*">(.*?)</a>slabel">(.*?)</div>supdate3">(.*?)</div>s: Rticontdescs	Next page(RtsplittlentgettNonetSRCH_URLR4R<R.R3R:R;tgetSearchGroupsR-R'R)R@R,(R2RBRttmpRtargsRRR6R7R8tnextPageRDRSRtdesc1tdesc2RTR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt	listItemssB

	"
 B1cCsVtdƒ|j|dƒ\}}|s-dSd}|jjj|ddƒ}xÁ|D]¹}|j|jjj|dd	tƒdƒ}	|	d
kr«|dkr«|d}	n|j|ƒ}
|	d
krÌqUnt	|ƒ}|j
itd6|d6|
d
6|	d6ƒ|j|ƒqUWt
|jƒdkrRg|_t	|ƒ}|j|||ƒndS(NsKinotan.listIndexesRis<divt>s	news-items</divs\shref=['"]([^'^"]+?)['"]ittgood_for_favRRi(s<divRas	news-item(s</divRa(RR4R3R:tgetAllItemsBeetwenNodesR-RZR.tcleanHtmlStrR'R)R<R@RVtcurrListtlistContent(R2RBtnextCategoryt
nextCategory2R7R8tidxR[RDRRR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistIndexesªs(

+
)	cCsetdƒi|_|dkrE|j|dƒ\}}|sEdSng}|jjj|ddƒ}t|ƒxõ|D]í}|j|ƒ}|jjj|dƒd}	|jjj|dƒd}
|jjj|dƒd}td	|	|
|fƒd
|	krwd
|
krwd
|krwi|	d6|
d6|d
6}|j	i|d6|j
dƒd6|d6ƒqwqwWt|ƒržt|ƒ}
d|
d<|j
||
ƒdS|jjj|ddtƒd}|d
kr¤yºttjd|dƒƒd}x’|D]Š}g}|j||dƒ}|j||dƒ}xã||dD]Ó}|j||d|dƒ}|jjj||d|ddƒd}|jdƒr­d|}ny*t|jjjd|d ƒdƒ}Wntk
rðd}nX|j	i|d6|d!6|d6ƒq@Wt|ƒr÷|jd"d#„ƒt|ƒ}
|
jidd6|d6|d$6ƒ|j|
ƒ||j|<q÷q÷WWq¤tk
r tƒq¤Xn|jjj|d%d&tƒd}|jjj|dƒd}|jdƒrþd|}n|jjj|d'dtƒd}|jjj|d(ƒd}|j|ƒ}|j||||ƒdS()NsKinotan.listContentRs<div id="videotabs_s</div>sre_xfn="([^"]+?)"isre_idnews="([0-9]+?)"sre_page="([0-9]+?)"s/>>>>>>>>> tab_block[%s] tab_id[%s] tab_page[%s]RbtblocktidRRRs/engine/ajax/re_video_part.phpR6tlist_tab_contentRsRalodePlayer.init(s"});it[s"}]R9titemstsnametscodessrc="([^"]*?)"s//shttp:s %s s[^0-9]([0-9]+?)[^0-9]t
sort_valuetkeycSs|dS(NRs((RD((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt<lambda>ísttab_ids<div class="full-text">s	</iframe>s<h2 class="opisnie">s>(.*?)</div>(RR1RXR4R3R:tgetAllItemsBeetwenMarkersReRZtappendR-RVR'RAR;R<Rtjsontloadst
startswithtintt	ExceptiontsortR)R@RR.texploreLink(R2RBRR8R7ttabsR[RDRt	tab_blockRvttab_pageR6R5tsKeytsTitletsIdteKeyRtsortValtd_urlRT((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyRgÀsr
	

$2
"!
,
*

&"

"
"Rbc
Csf|d}t|ƒ}||d<||d<|jj|ƒ}|dkrQd}n|ji|d6|d	6ƒ|dkrùd
|krù|jj|ƒ}x\|D]T}	t|ƒ}
|
jidd6|	dd6|	d
d6|	dd6ƒ|j|
ƒqWdS|dkr:t|i|dd6ƒ}|jj|ƒ}x\|D]T}	t|ƒ}
|
jidd6|	dd6|	d
d6|	dd6ƒ|j|
ƒq8Wdt	|ƒkr¦dS|}|jj
|dƒ}x]|D]U}	t|ƒ}
|
jidj||	d|	d
ƒd6|	dd6ƒ|j|
ƒqÈWdt	|ƒkr:dSnd|jj
|ƒkrb|j|ƒndS(NRRTRs
serpens.nlsdaaidaij.coms37.220.36.15smoonwalk.ccRtserie_titles/serial/tmoonwalkt	host_nameRmt	season_idshdgo.cctRefereriiÿÿÿÿs{0} - {1} - s01e{2} i(s
serpens.nlsdaaidaij.coms37.220.36.15(R'tuptgetHostNameR)R$tgetSeasonsListR@R	R%RVtgetEpiodesListtformattaddVideotcheckHostSupport(
R2RBRRRTRR5thostNametseasonsRDtparamt	seasonUrltepisodes((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyRþsH


	
/
5
0cCstdƒ|jddƒ}|dkrz|j|}xØ|D]7}t|ƒ}|d|d<|j|||dƒq<Wn–|jdƒ}|j|di|ƒ\}}	|s²dStdƒt|	ƒtdƒ|	jƒ}
|
jdƒsú|
jd	ƒr|j|||
ƒndS(
NsKinotan.listTabContentRvRbRRR6s*==========================================shttp://shttps://(RRWR1R'RR4tstripR{(R2RBRttabIdR€RDR5R6R7R8R((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistTabContent*s$





c	Csåtdƒ|d}|d}|d}g}|dkrV|jj|d|ƒ}n(|dkr~|jj|d|ƒ}nx`|D]X}t|ƒ}|jidj|||d	|d
ƒd
6|dd6ƒ|j|ƒq…WdS(NsKinotan.listEpisodesR‰RŒR‹RŠRshdgo.ccs{0} - s{1}e{2} {3}RmR(RR$R‘R%R'R)R’R“(R2RBRRmR•R™RDR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistEpisodesBs




9cCsÅidd6dd6dd6|d6}|j|jƒd|ƒ\}}|sMdSd}|jjj||d	tƒd
}|j|ƒ}x:|D]2}|j|jjj|ddƒd
ƒ}	|	d
krí|j|jjj|dƒdƒ}	n|j	|jjj|dƒdƒ}
|j
|jjj|dƒdƒ}|j|jjj|ddƒd
ƒ}|jj|ƒr‹t|ƒ}
|
j
idd6|	d6|
d6|d6|d6ƒ|j|
ƒq‹q‹WdS(NRtdoit	titleonlyt	subactiontstoryR6s<div class="short-item">s<div class="navigright">is<h3s</h3>Rbsalt=['"]([^'^"]+?)['"]issrc=['"]([^'^"]+?)['"]shref=['"]([^'^"]+?)['"]s<as</a>tlist_contentRRRSRTR(R4t
getMainUrlR3R:R;R<RUReRZtgetFullIconUrlR-t
isValidUrlR'R)R@(R2RBt
searchPatternt
searchTypeR6R7R8tm1RDRRSRRTR5((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytlistSearchResultSs$"!"
((%%(0cCs>td|ƒg}|jidd6|dd6dd6ƒ|S(NsKinotan.getLinksForVideo [%s]sMain urlR9Ritneed_resolve(RRx(R2RBturlTab((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytgetLinksForVideois&cCs<td|ƒg}|jdƒr8|jj|ƒ}n|S(NsKinotan.getVideoLinks [%s]thttp(RR{RŽtgetVideoLinkExt(R2tvideoUrlR«((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt
getVideoLinksos
cCs|dS(NR((R2RB((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytgetFavouriteDatavscCs|ji|d6ƒS(NR(R¬(R2tfav_data((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pytgetLinksForFavouriteysicCsôtdƒtj|||||ƒ|jjddƒ}|jjddƒ}td||fƒg|_|dkr“|j|jidd6ƒnJ|dkrµ|j	|jdƒn(|dkr×|j	|jdƒn|d	kr|j|j
idd6ƒnÝ|d
kr"|j|jdƒn»|dkrD|j|jdƒn™|d
krf|j
|jdƒnw|dkrˆ|j|jdƒnU|dkrª|j|jdƒn3|dkrÌ|j	|jdƒn|dkrñ|j|jddƒnì|dkr|j|jdƒnÊ|dkr5|j|jdƒn¨|dkrT|j|jƒn‰|dkr t|jƒ}|jitd6dd6ƒ|j|||ƒn=|dkrÖ|jidd6dd6dtdƒƒntƒtj|||ƒdS(NshandleService startR9RbRsKhandleService: |||||||||||||||||||||||||||||||||||| name[%s], category[%s] Rtlist_indexesRRRt
list_itemsRRR R"R¢t
list_episodesRnRtsearch_next_pageRRRRTsType: (ssearchR·(RRt
handleServicetcurrItemRWRfRXRAR/R`R0RGRIRKRNRPRkRgRœRR'R)R<R©tlistsHistoryR,RtendHandleService(R2tindextrefreshR¦R§R9RRB((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyR¸|sT
	*N(t__name__t
__module__R#RXR4RERGRIRKRNRPR`RkRgRRœRR©R¬R°R±R³R¸(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyRs(								)	>,							tIPTVHostcBseZd„ZRS(cCs)tj|tƒttjtjgƒdS(N(RR#RR.Rt
TYPE_VIDEOt
TYPE_AUDIO(R2((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyR#´s(R¾R¿R#(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyRÀ²s(t7Plugins.Extensions.IPTVPlayer.components.iptvplayerinitRR,t.Plugins.Extensions.IPTVPlayer.components.ihostRRRt-Plugins.Extensions.IPTVPlayer.tools.iptvtoolsRRRt-Plugins.Extensions.IPTVPlayer.libs.moonwalkccRt)Plugins.Extensions.IPTVPlayer.libs.hdgoccRt-Plugins.Extensions.IPTVPlayer.tools.iptvtypesR	R=RyR}t
simplejsonR
RRÀ(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostkinotan.pyt<module>s
	ÿš