source: titan/mediathek/localparser_secret/foxx.sh @ 42564

Last change on this file since 42564 was 42564, checked in by obi, 16 months ago

tithek optimize cloudflare and switch foxx to cloudflare

File size: 9.1 KB
Line 
1#!/bin/sh
2# first sh box parser for titannit mfg obi
3
4case $2 in
5        init) echo skip load hoster.sh;;
6        *) . /tmp/localhoster/hoster.sh;;
7esac
8
9SRC=$1
10INPUT=$2
11CURPAGE=$3
12MAXPAGE=$4
13PAGE=$5
14
15FILENAME=`echo $PAGE | tr '/' '.'`
16FILENAME=`echo $FILENAME | tr '&' '.'`
17
18if [ -z "$PAGE" ]; then
19        FILENAME=none
20fi
21
22URL=http://foxx.to
23PARSER=`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'`
24NAME="Foxx HD"
25
26mkdir $TMP > /dev/null 2>&1
27#TMP=/tmp/localcache
28if [ `echo $SRC | grep ^"/mnt/parser" | wc -l` -gt 0 ];then
29        TYPE="$SRC - Shell script"
30elif [ `echo $SRC | grep ^"/var/swap" | wc -l` -gt 0 ];then
31        TYPE="Swap - Shell script"
32elif [ `echo $SRC | grep ^"/mnt/swapextensions" | wc -l` -gt 0 ];then
33        TYPE="Mnt - Shell script"
34else
35        TYPE="Flash - Shell script"
36fi
37
38init()
39{
40        rm -rf $TMP > /dev/null 2>&1
41        echo "$NAME ($TYPE)#$SRC $SRC mainmenu#http://atemio.dyndns.tv/mediathek/menu/$PARSER.jpg#$PARSER.jpg#TiThek#0"
42}
43
44mainmenu()
45{
46        echo "Kinofilme#$SRC $SRC new 0 0 '?get=movies'#http://atemio.dyndns.tv/mediathek/menu/all-newfirst.jpg#all-newfirst.jpg#$NAME#0" > $TMP/$PARSER.$INPUT.list
47        #echo "Serien#$SRC $SRC new 0 0 '?get=tv'#http://atemio.dyndns.tv/mediathek/menu/Movies.jpg#Movies.jpg#$NAME#0" >> $TMP/$PARSER.$INPUT.list
48        echo "Search#$SRC $SRC search 1 0 '?s='#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search.jpg#$NAME#112" >> $TMP/$PARSER.$INPUT.list
49
50        if [ -e "$TMP/$PARSER.new.list" ] ; then
51                rm $TMP/$PARSER.new.list
52        fi
53        if [ "`echo $TMP/$PARSER.search.*.list`" != "$TMP/$PARSER.search.*.list" ] ; then
54                rm $TMP/$PARSER.search.*.list
55        fi
56        if [ -e "$TMP/$PARSER.page.list" ] ; then
57                rm $TMP/$PARSER.page.list
58        fi
59
60        echo "$TMP/$PARSER.$INPUT.list"
61}
62
63new()
64{
65        if [ ! -e "$TMP/$PARSER.$INPUT.list" ] ; then
66#               $curlbin $URL/$PAGE -o $TMP/cache.$PARSER.$INPUT.1
67
68#               /tmp/localhoster/hoster.sh get $URL/$PAGE > $TMP/cache.$PARSER.$INPUT.1
69                $BIN /tmp/localhoster/cloudflare.py "$URL/$PAGE" > $TMP/cache.$PARSER.$INPUT.1
70
71                cat $TMP/cache.$PARSER.$INPUT.1 | sed 's/<div class/\n<div class/g' | sed 's/<a href="/\n<a href="/g' | grep ^'<a href="' | grep alt= | grep -v .gif > /$TMP/cache.$PARSER.$INPUT.2
72                while read -u 3 ROUND; do
73                        TITLE=`echo $ROUND | sed 's/alt=/\nalt=/' | grep ^"alt=" | cut -d '"' -f2 | sed 's/#/%/'`
74                        TITLE=`echo $TITLE | sed -e 's/&#038;/&/g' -e 's/&amp;/und/g' -e 's/&quot;/"/g' -e 's/&lt;/\</g' -e 's/&#034;/\"/g' -e 's/&#039;/\"/g' -e 's/&%8211;/-/g' -e "s/&%8217;/'/g"`
75                        PIC=`echo $ROUND | sed 's!data-original=!\nsrc=!' | grep ^"src=" | cut -d '"' -f2`
76                        NEWPAGE=`echo $ROUND | sed 's/<a href=/\nhref=/' | grep ^"href=" | cut -d '"' -f2`
77
78                        if [ -z  "$PIC" ]; then 
79                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
80                                TMPPIC="default.jpg"
81                        else
82                                TMPPIC=goldesel_`echo $PIC | tr '/' '\n' | tail -n1`
83                        fi
84
85#                       echo "ROUND " $ROUND
86#                       echo "Bildlink " $PIC
87#                       echo "TMPPIC " $TMPPIC
88#                       echo "TITLE " $TITLE
89#                       echo "NEWPAGE " $NEWPAGE
90#
91#
92#exit
93                        if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then
94                                if [ `cat $TMP/$PARSER.$INPUT.list | grep ^"$NEWPAGE" | wc -l` -eq 0 ];then
95                                        if [ ! -e $TMP/$PARSER.$INPUT.list ];then
96                                                touch $TMP/$PARSER.$INPUT.list
97                                        fi
98# obi
99                                        LINE="$TITLE#$SRC $SRC hosterlist 0 0 $NEWPAGE#$PIC#$TMPPIC#$NAME#0"
100#                                       LINE="$TITLE#$SRC $SRC play $NEWPAGE#$PIC#$TMPPIC#$NAME#111"
101                                        echo "$LINE" >> $TMP/$PARSER.$INPUT.list
102                                fi
103                        fi
104                done 3<$TMP/cache.$PARSER.$INPUT.2
105                rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
106        fi
107
108        echo "$TMP/$PARSER.$INPUT.list"
109}
110
111search()
112{
113        if [ ! -e "$TMP/$PARSER.$INPUT.$CURPAGE.list" ] ; then
114                if [ "$CURPAGE" -eq "1" ] ; then
115                        NEWPAGE=$PAGE
116                else
117                        NEWPAGE=`echo $PAGE | sed "s/@PAGE@/$CURPAGE/g"`
118                fi
119#               $curlbin $URL/$NEWPAGE -o $TMP/cache.$PARSER.$INPUT.1
120
121#               /tmp/localhoster/hoster.sh get $URL/$PAGE > $TMP/cache.$PARSER.$INPUT.1
122                $BIN /tmp/localhoster/cloudflare.py "$URL/$PAGE" > $TMP/cache.$PARSER.$INPUT.1
123
124                cat $TMP/cache.$PARSER.$INPUT.1 | tr '\n' ' ' | sed -e 's/<a href=/\n<a href=/g' -e 's/Film/\nFilm/g' | grep '^<a href=' | grep '<img src=' > $TMP/cache.$PARSER.$INPUT.1a
125                cat $TMP/cache.$PARSER.$INPUT.1a | sed '/Stream in HD/d' > $TMP/cache.$PARSER.$INPUT.2
126                while read -u 3 ROUND; do
127                        TITLE=`echo $ROUND | sed 's/alt=/\nalt=/' | grep ^"alt=" | cut -d '"' -f2 | sed 's/#/%/'`
128                        TITLE=`echo $TITLE | sed -e 's/&#038;/&/g' -e 's/&amp;/und/g' -e 's/&quot;/"/g' -e 's/&lt;/\</g' -e 's/&#034;/\"/g' -e 's/&#039;/\"/g' -e 's/&%8211;/-/g' -e "s/&%8217;/'/g"`
129                        PIC=`echo $ROUND | sed 's/img src/\nsrc=/' | grep ^"src=" | cut -d '"' -f2`
130                        NEWPAGE=`echo $ROUND | sed 's/<a href=/\nhref=/' | grep ^"href=" | cut -d '"' -f2`
131
132                        if [ -z  "$PIC" ]; then 
133                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
134                                TMPPIC="default.jpg"
135                        else
136                                TMPPIC=foxx_`echo $PIC | tr '/' '\n' | tail -n1`
137                        fi
138
139#                       echo "ROUND " $ROUND
140#                       echo "Bildlink " $PIC
141#                       echo "TMPPIC " $TMPPIC
142#                       echo "TITLE " $TITLE
143#                       echo "NEWPAGE " $NEWPAGE
144#
145#
146#exit
147                        if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then
148                                if [ `cat $TMP/$PARSER.$INPUT.list | grep ^"$NEWPAGE" | wc -l` -eq 0 ];then
149                                        if [ ! -e $TMP/$PARSER.$INPUT.$CURPAGE.list ];then
150                                                touch $TMP/$PARSER.$INPUT.$CURPAGE.list
151                                        fi
152# obi
153                                        LINE="$TITLE#$SRC $SRC hosterlist 0 0 $NEWPAGE#$PIC#$TMPPIC#$NAME#0"
154#                                       LINE="$TITLE#$SRC $SRC play 0 0 $NEWPAGE#$PIC#$TMPPIC#$NAME#111"
155                                        echo "$LINE" >> $TMP/$PARSER.$INPUT.$CURPAGE.list
156                                fi
157                        fi
158                done 3<$TMP/cache.$PARSER.$INPUT.2
159                if [ "$CURPAGE" -eq "1" ] ; then
160                        PAGE="page/@PAGE@$PAGE"
161                        MAXPAGE=`cat $TMP/cache.$PARSER.$INPUT.1 | sed '/<div class="pagination/!d;s/^.*Seite 1 von //;s/<\/span>.*$//'`
162                fi
163                if [ "$CURPAGE" -lt "$MAXPAGE" ] ; then
164                        NEWPAGE=`expr $CURPAGE + 1`
165                        echo "Page ($NEWPAGE/$MAXPAGE)#$SRC $SRC search $NEWPAGE $MAXPAGE '$PAGE'#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#$NAME#0" >> $TMP/$PARSER.$INPUT.$CURPAGE.list
166                fi
167
168                rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
169        fi
170        if [ -e "$TMP/$PARSER.hosterlist.list" ] ; then
171                rm $TMP/$PARSER.hosterlist.list
172        fi
173
174        echo "$TMP/$PARSER.$INPUT.$CURPAGE.list"
175}
176
177hosterlist()
178{
179        if [ -e "$TMP/$PARSER.$INPUT.list" ] ; then
180                rm $TMP/$PARSER.$INPUT.list
181        fi
182#       $curlbin $PAGE -o $TMP/cache.$PARSER.$INPUT.1
183        $BIN /tmp/localhoster/cloudflare.py "$PAGE" > $TMP/cache.$PARSER.$INPUT.1
184
185        cat $TMP/cache.$PARSER.$INPUT.1 | grep -E ^"<iframe src=" | sed -e 's/<iframe src\=//g' | cut -d '"' -f2 >$TMP/cache.$PARSER.$INPUT.2
186        TEMP=$(cat $TMP/cache.$PARSER.$INPUT.2)
187        $curlbin $TEMP -o $TMP/cache.$PARSER.$INPUT.3
188        cat $TMP/cache.$PARSER.$INPUT.3 | grep -A 10 "var decodeABC" >$TMP/cache.$PARSER.$INPUT.4
189        echo "print(decodeABC(jbdaskgs));" >> $TMP/cache.$PARSER.$INPUT.4
190        $DUKBIN $TMP/cache.$PARSER.$INPUT.4 > $TMP/cache.$PARSER.$INPUT.5
191        cat $TMP/cache.$PARSER.$INPUT.5 | grep -o "http[^ ]*"| sed -e 's!{! !g' -e 's/}//g' -e 's/{//g' -e 's/\"//g' -e 's/file/\nfile/g' -e 's/file://g' -e 's/type:mp4//g' -e 's/default:true//g' -e 's/\]//g' >$TMP/cache.$PARSER.$INPUT.6
192        echo >> $TMP/cache.$PARSER.$INPUT.6
193        while read -u 3 ROUND; do
194                NEWPAGE=$(echo $ROUND | grep -o "http[^ ]*" | cut -d "," -f1)
195                TITLE=$(echo $ROUND | grep -o "label[^ ]*" | cut -d "," -f1 | sed -e 's!label:!!g' -e 's!"!!g')
196                if [ ! -z "$TITLE" ] && [ "$TITLE" != " " ] && [ ! -z "$NEWPAGE" ];then
197                        PIC=`echo $TITLE | tr [A-Z] [a-z]`
198                        LINE="Http Stream ($TITLE)#$NEWPAGE#http://atemio.dyndns.tv/mediathek/menu/foxx.jpg#foxx.jpg#$NAME#2"
199                        echo "$LINE" >> $TMP/$PARSER.$INPUT.list
200                fi
201        done 3<$TMP/cache.$PARSER.$INPUT.6
202        rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
203
204        echo $TMP/$PARSER.$INPUT.list
205}
206
207hoster()
208{
209        if [ ! -e "$TMP/$PARSER.$INPUT.list" ] ; then
210#               $curlbin $URL/res/links -X POST --data "$PAGE" -o $TMP/cache.$PARSER.$INPUT.1 -A 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.7.3000 Chrome/30.0.1599.101 Safari/537.36'
211                $curlbin $URL/res/links -X POST --data "$PAGE" -o $TMP/cache.$PARSER.$INPUT.1
212                echo "curl hoster " $curlbin $URL/res/links -X POST --data "$PAGE" -o $TMP/cache.$PARSER.$INPUT.1
213                cat $TMP/cache.$PARSER.$INPUT.1 | sed 's!url="http://dref.pw/?!\nstreamurl="!' | grep ^streamurl= | cut -d'"' -f2 | sed 's!%3A!:!g' | sed 's!%2F!/!g' > $TMP/$PARSER.$INPUT.list
214                rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
215        fi
216        cat $TMP/$PARSER.$INPUT.list
217}
218
219#obi
220play()
221{
222        if [ -e "$TMP/$PARSER.$INPUT.list" ] ; then
223                rm $TMP/$PARSER.$INPUT.list
224        fi
225
226#       $curlbin $PAGE -o $TMP/cache.$PARSER.$INPUT.1
227        $BIN /tmp/localhoster/cloudflare.py "$PAGE" > $TMP/cache.$PARSER.$INPUT.1
228
229        cat $TMP/cache.$PARSER.$INPUT.1 | grep -E ^"<iframe src=" | sed -e 's/<iframe src\=//g' | cut -d '"' -f2 >$TMP/cache.$PARSER.$INPUT.2
230        TEMP=$(cat $TMP/cache.$PARSER.$INPUT.2)
231        $curlbin $TEMP -o $TMP/cache.$PARSER.$INPUT.3
232        cat $TMP/cache.$PARSER.$INPUT.3 | grep -E "sources:*" >$TMP/cache.$PARSER.$INPUT.4
233        cat $TMP/cache.$PARSER.$INPUT.4 | grep -o "http[^ ]*"| sed -e 's/,/ /g' -e 's/}//g' -e 's/{//g' -e 's/\"//g' -e 's/file/\nfile/g' -e 's/file://g' -e 's/type:mp4//g' -e 's/default:true//g' -e 's/\]//g' >$TMP/cache.$PARSER.$INPUT.5
234
235        cat $TMP/cache.$PARSER.$INPUT.5 > $TMP/$PARSER.playlist.list
236
237        echo "$TMP/$PARSER.playlist.list"
238}
239
240case $INPUT in
241        init) $INPUT;;
242        mainmenu) $INPUT;;
243        new) $INPUT;;
244        search) $INPUT;;
245        page) $INPUT;;
246        hosterlist) $INPUT;;
247        hoster) $INPUT;;
248        play) $INPUT;;
249esac
Note: See TracBrowser for help on using the repository browser.