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ƒddlmZddlmZmZddlmZmZm	Z	ddl
mZddlm
Z
ddlZddlZyddlZWnek
r©ddlZnXddlmZmZmZmZedd	d
ddfd
dfddfddfd	dfddfddfgƒejj_edeƒejj_d„Zd„Zdefd„ƒYZdefd„ƒYZ dS(iÿÿÿÿ(tTranslateTXT(t	CHostBasetCBaseHostClass(tprintDBGtprintExctCSelOneLink(tstrwithmeta(tgetDirectM3U8PlaylistN(tconfigtConfigSelectiontConfigYesNotgetConfigListEntrytdefaultt1280tchoicest0t	najgorszat480t480x270t640t640x360t860t852x480t1280x720t1920t	1920x1080t999999t	najlepszacCsHg}|jtdtjjjƒƒ|jtdtjjjƒƒ|S(NsDomyślna jakość wideos!Używaj domyślnej jakości wideo(tappendRRtpluginst
iptvplayertfokustv_formatt
fokustv_df(t
optionList((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyt
GetConfigList"scCsdS(Nshttp://fokus.tv/((((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytgettytul)stFokusTVcBszeZd„Zid
d„Zd„Zd„Zd„Zd„Zd„Z	d„Z
d„Zd	„Zd
ddd„Z
RS(cCsItj|idd6dd6ƒd|_d|_d|_i|jd6d	d
6dd6d
d6|jƒd6|jƒd6|_t|jƒ|_|jj	idd6d
d6dd6dd6ƒi|_
i|_i|jd6td6td6td6|j
d6|_idd6dd6|jdƒd 6id!d6d"d6|jƒd 6g|_dS(#Nsfokus.tvthistorysfokus.tv.cookietcookiesJhttps://upload.wikimedia.org/wikipedia/commons/4/47/Fokus_TV_logo_2015.jpgsHMozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0shttp://www.fokus.tv/s
User-Agentt1tDNTs	text/htmltAccepts
gzip, deflatesAccept-EncodingtReferertOrigintXMLHttpRequestsX-Requested-Withs0application/x-www-form-urlencoded; charset=UTF-8sContent-Types.application/json, text/javascript, */*; q=0.01theadert
use_cookietload_cookietsave_cookiet
cookiefilet
list_vod_catstcategorytVODttitles/vodturlt	list_catst	Kategorie(Rt__init__tDEFAULT_ICON_URLt
USER_AGENTtMAIN_URLt
getMainUrltHEADERtdicttAJAX_HEADERtupdatetcacheFilterst
cacheLinkstTruetCOOKIE_FILEt
defaultParamst
getFullUrltMAIN_CAT_TAB(tself((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyR9.s			B,		2!cs–|ikrtˆjƒ}nˆ}ˆjjˆƒ‰‡‡fd†}iˆjjˆƒd6ˆjd6ˆjd6|d6|d<ˆjjˆ||ƒS(Ncs*ˆjj|ƒr|Stjˆ|ƒSdS(N(tcmt
isValidUrlturlparseturljoin(R6(tbaseUrlRI(sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyt_getFullUrlIstdomaintcookie_files
User-Agenttfull_url_handletcloudflare_params(	R?RFRJtiriToUritupt	getDomainRER;tgetPageCFProtection(RIRNt	addParamst	post_datatorigBaseUrlRO((RNRIsJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytgetPageBs8cCsetdƒt|ƒ}|jitd6dd6|jdƒd6ƒ|j|ƒ|j|j|ƒdS(NsFokusTV.listMainMenutgood_for_favsOglądaj Fokus TVR5s/playerR6(RR?RARDRGtaddVideotlistsTabRH(RItcItemtparams((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytlistMainMenuRs

+
c	Cstdƒ|j|dƒ\}}|s-dS|jjj|ddƒ}xË|D]Ã}|jjj|dƒd	}|j|jjj|d
ƒd	ƒ}|j|jjj|t	j
dƒt	j
dƒƒd
ƒ}t|ƒ}|jit
d6|d6|d6|d6ƒ|j|ƒqOWdS(NsFokusTV.listVodCatsR6s<divt>t	title_ftvs<asvideo_img mores(<a[^>]+?video_img more[^>]*?>)ishref=['"]([^'^"]+?)['"]s<hs	</h[0-9]>iR\R3R5(s<divRbRc(s<aRbsvideo_img more(RR[RJtphtgetAllItemsBeetwenNodestgetSearchGroupsRGtcleanHtmlStrtgetDataBeetwenReMarkerstretcompileR?RAtFalsetaddDir(	RIR_tnextCategorytststdatatitemR6R5R`((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytlistVodCatsZs

%:)c	Cstdƒ|j|dƒ\}}|s-dS|jjj|tjdƒtjdƒƒd}|jjj|ddƒ}x„|D]|}|j|jjj	|dƒd	ƒ}|j
|ƒ}t|ƒ}|jit
d
6|d6|d6|d6ƒ|j|ƒq€WdS(
NsFokusTV.listCatsR6s<div[^>]+?class=['"]cat_s</div>is<as</a>shref=['"]([^'^"]+?)['"]iR\R3R5(RR[RJRdRhRiRjtgetAllItemsBeetwenMarkersRGRfRgR?RARkRl(	RIR_RmRnRoRpR6R5R`((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytlistCatsis
1
%)cCsutdƒ|j|dƒ\}}|s-dStjdƒ}|jjj||tjdƒtƒd}|j|ƒ}xø|D]ð}|j	|jjj
|dƒdƒ}|j	|jjj
|dƒdƒ}|j|jjj|d	d
ƒdƒ}	|j|jjj|ddƒdƒ}
t
|ƒ}|jitd
6|d6|	d6|
d6|d6|d6ƒ|j|ƒq}WdS(NsFokusTV.listChannelsR6s&<div[^>]+?class=['"]channel['"][^>]*?>s+<div[^>]+?class=['"]site\-footer['"][^>]*?>ishref=['"]([^'^"]+?)['"]issrc=['"]([^'^"]+?)['"]s<spans</span>s<ps</p>R\R3R5tdescticon(RR[RiRjRJRdRhRktsplitRGRfRgtgetDataBeetwenMarkersR?RARDRl(RIR_RmRnRotspRpR6RuR5RtR`((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytlistChannelsxs
+
%%((7cCsîtd|ƒ|jddƒ}|d}|dkrG|d|7}n|j|ƒ\}}|sfdS|jjj|dƒd}|jjj|dƒd}|d	kr³t}nt}|jjj|ddƒ}x°|D]¨}|j	|jjj|dƒdƒ}|j
|jjj|dƒdƒ}	|j|ƒ}
t|ƒ}|j
itd6|d6|
d6|d6|	d6ƒ|j|ƒqÛW|rêt|jƒdkrêt|ƒ}|j
itd6tdƒd6|dd6ƒ|j|ƒndS(NsFokusTV.listItems [%s]tpageiR6s/%ss!(<a[^>]+?class="next_ftv"[^>]*?>)ishref=['"]([^'^"]+?)['"]ts<divRbtbox_small_videos</divssrc=['"]([^'^"]+?)['"]R\R3R5Rus	Next page(s<divRbR|(s</divRb(RtgetR[RJRdRfRDRkReRGtgetFullIconUrlRgR?RARltlentcurrListt_(RIR_RmRzR6RnRotnextPageRpRuR5R`((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyt	listItems‹s2
	
%%0,cCstd|ƒ|j|dƒ\}}|s1dStjdƒ}|jjj|ddƒ}x°|D]¨}|j|ƒ}t|ƒr|d	=nxz|D]r}|jjj	|tjd
ƒtjdƒƒd}|j
|jjj|d
ƒd	ƒ}|j|ƒ}	|jjj	|tjdƒtjdƒƒd}|j
|jjj|d
ƒd	ƒ}
|j
|jjj|dƒd	ƒ}|j|ƒ}|j|jddƒd	ƒ}
t|ƒ}|jitd6|d6|d6|
d6|
d6|d6|	d6|d6ƒ|j|ƒq”WqbWdS(NsFokusTV.listItems2 [%s]R6s&<div[^>]+?box_small_video_image[^>]+?>s<divRbR|s<asclass="more"is<a[^>]+?cat_vods</a>ishref=['"]([^'^"]+?)['"]s<a[^>]+?video_titlessrc=['"]([^'^"]+?)['"]s</div>R\R3R5Rttcat_urlt	cat_titleRu(s<divRbsbox_small_video(s<aRbsclass="more"(RR[RiRjRJRdReRvRRhRGRfRgR~R?RARDRl(RIR_RmRnRot
splitReObjttmpRptcatUrltcatTitleR6RuR5RtR`((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyt
listItems2©s,


1%1%%EcCsZtd|ƒ|j|dƒ\}}|s1dSt|ƒ}|jddƒ}|jddƒ}g}|jjj|ddƒd}|jjj|d	d
ƒ}xr|D]j}|j|ƒ}	|	dkr¨|jjj	|dƒd}
|
dkrþd
|
}
n|j
|	|
ƒq¨q¨Wdj|ƒd|j|jjj|ddƒdƒ}d|krdt}nt
}t
}d|kr¬dj|jjj|d%d&t
ƒƒ}t}n-d|ksÐd|krÙd|krÙt}n|rÂ|jjj|d'd(ƒ}xÅ|D]º}|jjj	|dƒd}
|
d)kr5qn|j|jjj	|d ƒdƒ}|j|ƒ}t|ƒ}|jitd!6|d"6|j|
ƒd6|d#6|d$6ƒ|j|ƒqWn|rVdt|jƒkrVt|ƒ}|ji|d$6ƒ|j|ƒ|jj|ƒrVt|ƒ}|ji|d"6|d6ƒ|j|ƒqVndS(*NsFokusTV.exploreItem [%s]R6R„R{R…s<div class="wideo_infos</div>is<spans</span>spg_([0-9]+?)[^0-9]it s | s[/br]s<p class="desc_opis"s</p>s<videotSezont	box_smalls<divRbs
class="clear"szobacz wszystkie odcinkiszobacz wszystkotOdcinkis<div class="box_smalltvideos</divshref=['"]([^'^"]+?)['"]t#ssrc=['"]([^'^"]+?)['"]R\R5RuRt(RŒR(s<divRbs
class="clear"(s<div class="box_smallRbR(s</divRb(R{R(RR[R?tpopRJRdRwRrRgRfRtjoinRDRkReR~RARGR]RR€RKRl(RIR_RnRoRˆR‰RtR‡RptttpgthaveVideoSourcet
listVideosR6RuR5R`((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytexploreItemÂs\

9	'	$	
%9
cCs?td|ƒg}|d}|j|ƒ\}}|s=gS|jdƒr˜dg}|jjj|dddtƒd}|jjj|d	ƒd
}|jjj|dƒd
}|dkrÇd
}n||kræ|jd
|ƒnxÙ|D]¤}|j|di|d6ƒ\}}|s!qín|jj	|ƒrít
|dtdtƒ}xC|D]8}	t|	didd6td6ƒ|	d<|j
|	ƒqRWqíqíWn*|jjj|ddƒd}|jjj|ddttƒ}xç|D]ß}	|jjj|	dƒd
jddƒ}|jdƒr)d|}n|jdƒs>qßnd|	kr|jjj|	d ƒd
}
|jjj|	d!ƒd
}|jjj|	d"ƒd
}|dkr³|}n|dkrÈ|
}nt|i|dd#6|jd$6ƒ}|j
id%j|ƒd&6|d6ƒqßd'|	krßt|idd6|dd#6|jj|dtƒd(6|jd$6ƒ}t
|dtdtƒ}
x/tt|
ƒƒD]}d|
|djd<qW|j|
ƒqßqßWdt|ƒkr;ttjjjjƒd)}d*„}t|||ƒ}tjjj jr,|j!ƒ}q;|j"ƒ}n|S(+NsFokusTV.getLinksForVideo [%s]R6s/playersfokustv-p/stream1s$.post(tfunctiontwithMarkersis(https?://[^'^"]+?)['"]is(streamUri['"\s]*?:\s*?['"]([^'^"]+?)['"]R{s/https://api.stream.smcdn.pl/api/secureToken.phpRYt	streamUritcheckExttcheckContenttm3u8t
iptv_prototiptv_livestreams<videos</video>s<source Rbssrc=['"]([^"^']+?)['"]s&amp;t&s//shttp:thttps	video/mp4stype=['"]([^"^']+?)['"]sres=['"]([^"^']+?)['"]slabel=['"]([^"^']+?)['"]R*s
User-Agents{0}tnametmpegurlR+icSs+yt|dƒSWntk
r&dSXdS(Ntwithi(tintt	Exception(titemLink((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyt__getLinkQuality+s
(#RR[tendswithRJRdRwRkRftinsertRKRRDRRRrtreplacet
startswithR;tformatRURVtrangeRtmetatextendR¥RRRRtvalueRR t
getOneLinktgetSortedLinks(RIR_turlTabR6RnRottabt	secureUriRšRpttypetrestlabelttmpTabtidxt
maxQualityt_FokusTV__getLinkQualitytoneLink((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pytgetLinksForVideo÷sp
	%	
"
%!
(
		$'E	iR{c	Csétdƒtj|||||ƒ|jjddƒ}|jjddƒ}|jjddƒ}td||fƒg|_|dkr¢|jidd6ƒn0|dkrÄ|j|jdƒn|d	kræ|j	|jd
ƒnì|dkr|j
|jdƒnÊ|d
kr*|j|jdƒn¨|dkrI|j|jƒn‰|dkr•t
|jƒ}|jitd6dd6ƒ|j|||ƒn=|dkrË|jidd6dd6dtdƒƒntƒtj|||ƒdS(NshandleService startR¢R{R3tmodesKhandleService: |||||||||||||||||||||||||||||||||||| name[%s], category[%s] R2t
list_itemsR7tlist_items_2texplore_itemtsearchtsearch_next_pagetsearch_itemtsearch_historyR%RtsType: (ssearchRÅ(RRt
handleServicetcurrItemR}R€tNoneRaRqRsRƒRŠR—R?RARktlistSearchResulttlistsHistoryRRtendHandleService(	RItindextrefresht
searchPatternt
searchTypeR¢R3RÀR_((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyRÈ6s6
	*N(t__name__t
__module__R9RÊR[RaRqRsRyRƒRŠR—R¿RÈ(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyR$,s								5	?tIPTVHostcBseZd„ZRS(cCstj|tƒtgƒdS(N(RR9R$RD(RI((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyR9^s(RÒRÓR9(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyRÔ\s(!t7Plugins.Extensions.IPTVPlayer.components.iptvplayerinitRRt.Plugins.Extensions.IPTVPlayer.components.ihostRRt-Plugins.Extensions.IPTVPlayer.tools.iptvtoolsRRRt-Plugins.Extensions.IPTVPlayer.tools.iptvtypesRt2Plugins.Extensions.IPTVPlayer.libs.urlparserhelperRRLRitjsonR¦t
simplejsontComponents.configRR	R
RRRRRDR R"R#R$RÔ(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostfokustv.pyt<module>s0
"							ÿ1