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
mZddlm
Z
ddlmZddlmZyddlZWnek
r­ddlZnXddlZddlZddlmZmZmZedd	ƒejj_d
„Zd„Zdefd
„ƒYZdefd„ƒYZdS(iÿÿÿÿ(tTranslateTXT(t	CHostBasetCBaseHostClasstCDisplayListItem(tprintDBGtIsExecutabletprintExctbyteify(tIPTVFileHost(t
YouTubeParserN(tconfigtConfigDirectorytgetConfigListEntrytdefaults/hdd/cCs÷g}|jttdƒtjjjƒƒ|jttdƒtjjjƒƒ|jttdƒtjjjƒƒ|jttdƒtjjj	ƒƒ|jttdƒtjjj
ƒƒtdƒró|jttdƒtjjjƒƒn|S(NsSort by:sPath to ytlist.txt, urllist.txts
Video format:sDefault video quality:sUse default video quality:tffmpegsAllow dash format:(
tappendRt_R
tpluginst
iptvplayertytSortBytSciezkaurllisttytformattytDefaultformattytUseDFRt
ytShowDash(t
optionList((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyt
GetConfigLists%%%%%(cCsdS(Nshttps://youtube.com/((((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytgettytul+stYoutubecBs’eZd„Zd„Zd„Zed„Zd„Zd„Zd„Z	d„Z
d„Zd	„Zd
„Z
d„Zdd
d
d„Zd„ZRS(cCs8tdƒtj|idd6dd6ƒd|_d|_idd	6td
ƒd6tdƒd
6idd	6tdƒd6tdƒd
6td6idd	6tdƒd6tdƒd
6idd	6tdƒd6tdƒd
6g|_tdƒdftdƒdftdƒdftdƒdfg|_t	ƒ|_
d|_dS( NsYoutube.__init__tytlistthistorysyoutube.cookietcookies
ytlist.txtsbhttps://www.vippng.com/png/full/85-853653_patreon-logo-png-transparent-background-youtube-logo.pngt	from_filetcategorys
User linksttitles)User links stored in the ytlist.txt file.tdesctsearchtSearchsSearch youtube materials tsearch_itemtfeedssTrending FeedssBrowse youtube trending feedstsearch_historysSearch historysHistory of searched phrases.tVideotvideotChanneltchanneltPlaylisttplaylisttLivetlive(
RRt__init__tUTLIST_FILEtDEFAULT_ICON_URLRtTruetMAIN_GROUPED_TABtSEARCH_TYPESR	tytptNonetcurrFileHost(tself((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyR10s
		$+$-cCs tdƒd|krd}n}|jdƒdjdƒrDd}nXdtjd|ƒkred	}n7d
|ksd|kr–|jdƒr–d
}nd}|S(NsYoutube._getCategorys/playlist?list=R.t?is
/playlistst	playlistss/watch\?v=[^\&]+?\&list=ttraylistsuser/schannel/s/liveR,R*(RtsplittendswithR8treR$(R:turlR!((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyt_getCategoryDs
			(	cCsItdƒx8|jD]-}idd6}|j|ƒ|j|ƒqWdS(NsYoutube.listsMainMenuR!tname(RR5tupdatetaddDir(R:titemtparams((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytlistMainMenuRs



cCstd|ƒt}tjjjj}t}d|kr9tƒ|_|jj	||j
ddƒ|jj|ƒ}dt|ƒkrÉt
|ƒ}|jidd6dd6tdƒd	6ƒ|j|ƒnxC|D]b}d
|krñtdƒ}	n|}	t
|ƒ}|jidd6|	d	6|d6ƒ|j|ƒqÐWnÖd|dkr|jj|ƒ}x±|D]¦}t
|ƒ}|j|dƒ}
|jitd
6|dd	6|dd6|dd6|
d6ƒd|
krß|j|ƒqbd|
krû|j|ƒqb|j|ƒqbWnd|dkr|jj|d|ƒ}xÔ|D]É}d
|dkrb|d}	n
|d}	t
|ƒ}|j|dƒ}
|jitd
6|	d	6|dd6|dd6|
d6ƒd|
krß|j|ƒq?d|
krû|j|ƒq?|j|ƒq?WndS(NsYoutube.listCategory cItem[%s]tsub_file_categorytencodingsutf-8italltgroups--All--R"ts	--Other--RAtgood_for_favt
full_titleR#R!R*tmorettitle_in_group(RR4R
RRRtvalueRR9taddFileR2t	getGroupstlentdictRDRREtgetAllItemsRBtaddVideotaddMoretgetItemsInGroup(R:tcItemt
searchModetsortListt	filespatht	groupListttmpListRGRFR"R!((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytlistCategoryYsX(
"
<


8cCsÀtd|ƒ|jddƒ}|jddƒ}|jddƒ}d|krq|jj||||ƒ|_nxHtt|jƒƒD]1}|j|dd
kr‡t|j|d<q‡q‡WdS(NsYoutube.listItems cItem[%s]R!RMRAtpaget1R<R,R.tmovieR=RN(schannelsplaylistRdstraylist(RtgetR7tgetListPlaylistsItemstcurrListtrangeRUR4(R:R[R!RARbtidx((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyt	listItems‹s!cCsKtd|ƒ|jddƒ}|dkred}|jj|ƒ}x|D]}|j|ƒqKWnâ|jdƒrG|d}|jddƒ}|jj|ƒ}x¢|D]—}|jidd	6ƒd
|dkrã|j|ƒq©d|dkr|j	|ƒq©|ddks&|djdƒr3t
|d<n|j|ƒq©WndS(NsYoutube.listFeeds cItem[%s]R!RMR's%https://www.youtube.com/feed/trendingtfeeds_iRARCR*ttypeRPR,R.RdR=RN(schannelsplaylistsmoviestraylist(RReR7tgetFeedsListREt
startswithtgetVideoFromFeedRDRXRYR4(R:R[R!RAR`RFttopic((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyt	listFeeds˜s(


#
cCstd|ƒ|jddƒ}|jddƒ}|jddƒ}d|kr²d|kr‘d	|kr‘|jd
ƒr„|d}q‘|d}n|jj||||ƒ|_nhd
|krß|jj||||ƒ|_n;d|kr|jj||||ƒ|_ntd|ƒdS(NsYoutube.getVideos cItem[%s]R!RMRARbRcR,tbrowse_ajaxtctokens/videoss?flow=list&view=0&sort=dds /videos?flow=list&view=0&sort=ddR.R=s+YTlist.getVideos Error unknown category[%s](RReR?R7tgetVideosFromChannelListRgtgetVideosFromPlaylisttgetVideosFromTraylist(R:R[R!RARb((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyt	getVideos³s

!!!cCs7|jddƒ}|jddƒ}|rqtd|ƒ|jjtj|ƒ||dtjjj	j
|ƒ}n3|jjtj|ƒ||dtjjj	j
ƒ}xŒ|D]„}|jidd6ƒd	|d
krå|j|ƒq«d|d
kr|j
|ƒq«|ddkr"t|d<n|j|ƒq«WdS(NRbRcRARMsURL ricerca -----------> %sR$R!RCR*RlRPR,R.RdR=RN(schannelsplaylistsmoviestraylist(ReRR7tgetSearchResultturllibt
quote_plusR
RRRRRRDRXRYR4RE(R:R[tpatternt
searchTypeRbRAR`RF((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytlistSearchResultÈs93

cCsWtd|ƒ|jj|dƒ}tjjjjrSdt|ƒkrS|dgS|S(Ns"Youtube.getLinksForVideo cItem[%s]RAi(	RtuptgetVideoLinkExtR
RRRRRRU(R:R[turlTab((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytgetLinksForVideoÝs
$cCstdƒtj|ƒS(NsYoutube.getFavouriteData(Rtjsontdumps(R:R[((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytgetFavouriteDataäs
cCshtdƒg}y(ttj|ƒƒ}|j|ƒ}Wn)tk
rctƒ|ji|d6ƒSX|S(NsYoutube.getLinksForFavouriteRA(RRR‚tloadsRt	ExceptionR(R:tfav_datatlinksR[((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytgetLinksForFavouriteès

cCsUtdƒyttj|ƒƒ}Wntk
rCi}tƒnX|j|ƒtS(Ns$Youtube.setInitListFromFavouriteItem(RRR‚R…R†RRER4(R:R‡RG((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytsetInitListFromFavouriteItemós


iRMcCs¢tdƒtj|||||ƒ|jjddƒ}|jjddƒ}td||fƒg|_d|krƒ|jƒnd|kr¢|j|jƒné|dkrÁ|j	|jƒnÊ|j
dƒrã|j|jƒn¨|dkr|j|jƒn‰|dkrNt
|jƒ}|jitd6dd6ƒ|j|||ƒn=|dkr„|jidd6d
d6dtdƒƒntƒtj|||ƒdS(NsYoutube.handleService startRCRMR!s9Youtube.handleService: ---------> name[%s], category[%s] R R,R.RdR=R'R<R$tsearch_next_pageR&R(RR#sType: (schannelsplaylistsmoviestraylist(ssearchR‹(RRt
handleServicetcurrItemReRgR8RHRaRwRnRqRjRVRDtFalseR}tlistsHistoryRRtendHandleService(R:tindextrefresht
searchPatternR|RCR!R[((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyRŒýs0
	
*cCs$tdƒddlm}|tƒS(NsYoutube.getSuggestionsProvideriÿÿÿÿ(tSuggestionsProvider(Rt0Plugins.Extensions.IPTVPlayer.suggestions.googleR”R4(R:R‘R”((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytgetSuggestionsProviders
(t__name__t
__module__R1RBRHRŽRaRjRqRwR}RR„R‰RŠRŒR–(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyR.s			2	
							
!tIPTVHostcBseZd„Zd„ZRS(cCs
|jjS(N(thostR6(R:((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pytgetSearchTypes%scCs)tj|tƒttjtjgƒdS(N(RR1RR4Rt
TYPE_VIDEOt
TYPE_AUDIO(R:((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyR1(s(R—R˜R›R1(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyR™#s	( t7Plugins.Extensions.IPTVPlayer.components.iptvplayerinitRRt.Plugins.Extensions.IPTVPlayer.components.ihostRRRt-Plugins.Extensions.IPTVPlayer.tools.iptvtoolsRRRRt0Plugins.Extensions.IPTVPlayer.tools.iptvfilehostRt0Plugins.Extensions.IPTVPlayer.libs.youtubeparserR	R‚R†t
simplejsonR@RytComponents.configR
RRRRRRRRR™(((sJ/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/hosts/hostyoutube.pyt<module>s "
		õ