source: titan/mediathek/localparser_secret/kinox.sh @ 42464

Last change on this file since 42464 was 42464, checked in by obi, 2 years ago

tithek testfix speedup init localhoster

File size: 12.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
9#SRC=$1
10#INPUT=$2
11#PAGE=$3
12#NEXT=$4
13#
14#FILENAME=`echo $PAGE | tr '/' '.'`
15#FILENAME=`echo $FILENAME | tr '&' '.'`
16#
17#if [ -z "$PAGE" ]; then
18#       FILENAME=none
19#fi
20
21SRC=$1
22INPUT=$2
23PAGE=$3
24NEXT=$4
25PAGE2=$5
26PARSER=`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'`
27
28FILENAME="$PARSER $INPUT $PAGE $NEXT $PAGE2"
29FILENAME=`echo $FILENAME | tr '&' '.' | tr '/' '.' | tr '?' '.'  | tr '=' '.' | sed 's/ \+/./g' | sed 's/\.\+/./g'`
30
31if [ -z "$FILENAME" ]; then
32        FILENAME=none
33fi
34
35#URL=http://movie4k.to
36URL=https://kinoxto.stream
37PARSER=`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'`
38NAME=KinoX
39
40mkdir $TMP > /dev/null 2>&1
41
42if [ `echo $SRC | grep ^"/mnt/parser" | wc -l` -gt 0 ];then
43        TYPE="$SRC - Shell script"
44elif [ `echo $SRC | grep ^"/var/swap" | wc -l` -gt 0 ];then
45        TYPE="Swap - Shell script"
46elif [ `echo $SRC | grep ^"/mnt/swapextensions" | wc -l` -gt 0 ];then
47        TYPE="Mnt - Shell script"
48else
49        TYPE="Flash - Shell script"
50fi
51
52init()
53{
54        rm -rf $TMP > /dev/null 2>&1
55        echo "$NAME ($TYPE)#$SRC $SRC mainmenu#http://atemio.dyndns.tv/mediathek/menu/$PARSER.jpg#$PARSER.jpg#TiThek#0"
56}
57
58mainmenu()
59{
60        echo "Kino#$SRC $SRC kino 'Kino-filme.html'#http://atemio.dyndns.tv/mediathek/menu/Cine-Films.jpg#Cine-Films.jpg#$NAME#0" >$TMP/$FILENAME.list
61        echo "All (A-Z)#$SRC $SRC sorted#http://atemio.dyndns.tv/mediathek/menu/a-z.jpg#a-z.jpg#$NAME#0" >>$TMP/$FILENAME.list
62        echo "Search#http://atemio.dyndns.tv/mediathek/youtube/streams/kinox.all-sorted.list#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search.jpg#KinoX#21" >>$TMP/$FILENAME.list
63        echo "Search Cast#http://atemio.dyndns.tv/mediathek/youtube/streams/kinox.all-sorted.list#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search10.jpg#KinoX#31" >>$TMP/$FILENAME.list
64        echo "$TMP/$FILENAME.list"
65}
66
67sorted()
68{
69        if [ ! -e "$TMP/$FILENAME.list" ]; then
70                watchlist="A B C D E F G H I J K L M N O P Q R S T U V W X Y Z"
71
72                rm $TMP/$FILENAME.list > /dev/null 2>&1
73
74                for ROUND0 in $watchlist; do
75                        TITLE=`echo $ROUND0`
76                        filename=`echo $TITLE | tr [A-Z] [a-z]`
77                        echo "$TITLE#$SRC $SRC search '$ROUND0' 1#http://atemio.dyndns.tv/mediathek/menu/$filename.jpg#$filename.jpg#$NAME#0" >> $TMP/$FILENAME.list
78                done
79        fi
80        echo "$TMP/$FILENAME.list"
81}
82
83search()
84{
85        if [ ! -e "$TMP/$FILENAME.list" ]; then
86                piccount=0
87
88                $BIN /tmp/localhoster/cloudflare.py "$URL/aGET/List/?sEcho=1&iColumns=10&sColumns=&iDisplayStart=$NEXT&iDisplayLength=50&iSortingCols=1&iSortCol_0=5&sSortDir_0=asc&bSortable_0=true&bSortable_1=true&bSortable_2=true&bSortable_3=false&bSortable_4=false&bSortable_5=false&bSortable_6=true&additional=%7B%22fType%22%3A%22movie%22%2C%22fLetter%22%3A%22$PAGE%22%7D" > $TMP/cache.$FILENAME.1
89
90                if [ `cat $TMP/cache.$FILENAME.1 | grep "KinoX 404 Not Found" | wc -l` -eq 1 ];then
91                        ERRORMSG="KinoX 404 Not Found"
92#                       echo "errormsg=$ERRORMSG"
93                        LINE="$ERRORMSG#$NEWPAGE#$PIC#kinox_$piccount.jpg#KinoX#22"
94                        echo "$LINE" > $TMP/$FILENAME.list
95                        exit
96                fi
97
98                if [ `cat $TMP/cache.$FILENAME.1 | grep "KinoX 503 Service Temporarily Unavailable" | wc -l` -eq 1 ];then
99                        ERRORMSG="KinoX 503 Service Temporarily Unavailable"
100#                       echo "errormsg=$ERRORMSG"
101                        LINE="$ERRORMSG#$NEWPAGE#$PIC#kinox_$piccount.jpg#KinoX#22"
102                        echo "$LINE" > $TMP/$FILENAME.list
103                        exit
104                fi
105
106                pages=`cat $TMP/cache.$FILENAME.1 | tr ',' '\n' | grep iTotalDisplayRecords | cut -d '"' -f4`
107                if [ -z "$pages" ];then
108                        pages=0
109                fi
110                cat $TMP/cache.$FILENAME.1 | tr '\n' ' ' | sed 's!<TR>!\nfound=!g'| grep ^"found="  >$TMP/cache.$FILENAME.2
111
112                if [ "$pages" == " " ] || [ -z "$pages" ] || [ "$pages" == 0 ]; then
113                        rm $TMP/cache.$FILENAME.1
114                        break
115                        ls $TMP/cache.$FILENAME.1
116                        exit
117                fi
118       
119#               if [ $pages -gt 1000 ]; then
120#                       pages=1000
121#               fi
122       
123                max=`expr $pages - 4`
124#               echo max $max
125               
126                cat $TMP/cache.$FILENAME.1 | tr '],[' '\n' | grep 'Stream' | cut -d '/' -f3 | cut -d"\\" -f1 > $TMP/cache.$FILENAME.3
127
128                count=0
129
130                while read -u 3 ROUND; do
131                        piccount=`expr $piccount + 1`
132                        filename=`echo $ROUND | sed 's!/Stream/!!'`
133                        picname=`echo $filename | sed 's!.html!.jpg!'`
134                        searchname=`echo $filename | sed 's!.html!!'`   
135               
136                        TITLE=`echo $picname | sed 's!.jpg!!' | tr "_" " "`
137
138                        if [ `cat /mnt/config/titan.cfg | grep tithek_kinox_pic=1 | wc -l` -eq 1 ];then
139                #               $wgetbin --no-check-certificate "$MAINURL/$ROUND1" -O cache."$filename".list
140#                               echo $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND"
141                                $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND" > $TMP/cache."$filename".list
142                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
143#                                       echo $BIN2 /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND"
144                                        $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND" > $TMP/cache."$filename".list
145                                fi
146                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
147#                                       echo $BIN3 /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND"
148                                        $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND" > $TMP/cache."$filename".list
149                                fi
150                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
151#                                       echo $BIN4 /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND"
152                                        $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND" > $TMP/cache."$filename".list
153                                fi
154                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
155#                                       echo $BIN5 /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND"
156                                        $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND" > $TMP/cache."$filename".list
157                                fi
158                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
159#                                       echo $BIN6 /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND"
160                                        $BIN /tmp/localhoster/cloudflare.py "$URL/Stream/$ROUND" > $TMP/cache."$filename".list
161                                fi
162                                PIC=$URL/`cat $TMP/cache."$filename".list | tr '><' '>\n<' | grep $picname | cut -d '"' -f2 | sort -um`
163                                LANG=`cat $TMP/cache."$filename".list | grep 'alt="language" src="/gr/sys/lng' | sed 's!alt="language" src="/gr/sys/lng/!\n!' | tail -n1 |cut -d"." -f1`
164                        else
165                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
166                                LANG=1
167                        fi
168
169                        LANGTXT=" (de)"
170
171                        if [ ! -z $LANG ];then
172                                if [ $LANG = 1 ];then
173                                        LANGTXT=" (de)"
174                                elif [ $LANG = 2 ];then
175                                        LANGTXT=" (en)"
176                                else
177                                        LANGTXT=" (??)"
178                                fi
179                        fi
180
181                        NEWPAGE="$URL/Stream/$ROUND"
182
183                        if [ -z "$PIC" ]; then
184                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
185                        fi
186
187                        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/#034;/\"/g' -e 's/#039;/\"/g' -e 's/&szlig;/\C3x/g' -e 's/&ndash;/-/g' -e 's/&Auml;/\C3/g' -e 's/&Uuml;/\C3S/g' -e 's/&Ouml;/\C3/g' -e 's/&auml;/\E4/g' -e 's/&uuml;/\FC/g' -e 's/&ouml;/\F6/g' -e 's/&eacute;/\E9/g' -e 's/&egrave;/\E8/g' -e 's/%F6/\F6/g' -e 's/%FC/\FC/g' -e 's/%E4/\E4/g' -e 's/%26/&/g' -e 's/%C4/\C3/g' -e 's/%D6/\C3/g' -e 's/%DC/\C3S/g' -e 's/%28/(/g' -e 's/%29/)/g' -e 's/%3A/:/g' -e 's/%40/@/g' -e 's/%2B/&/g' -e 's/%C3/A/g' -e 's/%B1/&/g' -e 's/%5B//g' -e 's/%5D//g' -e 's!%2F!/!g' -e 's/|/ /g' -e 's/(/ /g' -e 's/)/ /g' -e 's/+/ /g' -e 's/\//-/g' -e 's/,/ /g' -e 's/;/ /g' -e 's/:/ /g' -e 's/\.\+/./g'`
188
189                        if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then
190                                if [ ! -e $TMP/$FILENAME.list ];then
191                                        touch $TMP/$FILENAME.list
192                                fi
193                                piccount=`expr $piccount + 1`
194                                LINE="$TITLE$LANGTXT#$NEWPAGE#$PIC#kinox_$piccount.jpg#KinoX#22"
195
196                                echo "$LINE" >> $TMP/$FILENAME.list
197                        fi
198
199                done 3<$TMP/cache.$FILENAME.3
200
201                if [ "$NEXT" -lt "$pages" ]; then
202                        NEXTPAGE=`expr $NEXT + 30`
203                        LINE="Page ($NEXTPAGE/$pages)#$SRC $SRC search '$PAGE' $NEXTPAGE#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#$NAME#0"
204                        echo "$LINE" >> $TMP/$FILENAME.list
205                fi
206
207                rm $TMP/cache.$FILENAME.* > /dev/null 2>&1
208        fi
209        echo "$TMP/$FILENAME.list"
210}
211
212kino()
213{
214        if [ ! -e "$TMP/$FILENAME.list" ]; then
215                piccount=0
216#               $curlbin "$URL/$PAGE" -o "$TMP/cache.$FILENAME.1"
217                $BIN /tmp/localhoster/cloudflare.py "$URL/$PAGE" > $TMP/cache.$FILENAME.1
218
219                if [ `cat $TMP/cache.$FILENAME.1 | grep "KinoX 404 Not Found" | wc -l` -eq 1 ];then
220                        ERRORMSG="KinoX 404 Not Found"
221#                       echo "errormsg=$ERRORMSG"
222                        LINE="$ERRORMSG#$NEWPAGE#$PIC#kinox_$piccount.jpg#KinoX#22"
223                        echo "$LINE" > $TMP/$FILENAME.list
224                        exit
225                fi
226                if [ `cat $TMP/cache.$FILENAME.1 | grep "KinoX 503 Service Temporarily Unavailable" | wc -l` -eq 1 ];then
227                        ERRORMSG="KinoX 503 Service Temporarily Unavailable"
228#                       echo "errormsg=$ERRORMSG"
229                        LINE="$ERRORMSG#$NEWPAGE#$PIC#kinox_$piccount.jpg#KinoX#22"
230                        echo "$LINE" > $TMP/$FILENAME.list
231                        exit
232                fi
233
234                cat $TMP/cache.$FILENAME.1 | grep /Stream/ | sed 's!/Stream/!\n/Stream/!' | grep ^/Stream/ | cut -d '"' -f1  | cut -d "'" -f1 | sort -um >$TMP/cache.$FILENAME.2
235                while read -u 3 ROUND; do
236                        piccount=`expr $piccount + 1`
237                        filename=`echo $ROUND | sed 's!/Stream/!!'`
238                        picname=`echo $filename | sed 's!.html!.jpg!'`
239                        searchname=`echo $filename | sed 's!.html!!'`   
240               
241                        TITLE=`echo $picname | sed 's!.jpg!!' | tr "_" " "`
242
243                        if [ `cat /mnt/config/titan.cfg | grep tithek_kinox_pic=1 | wc -l` -eq 1 ];then
244                #               $wgetbin --no-check-certificate "$MAINURL/$ROUND1" -O cache."$filename".list
245#                               echo $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND"
246                                $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND" > $TMP/cache."$filename".list
247                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
248                                        echo $BIN2 /tmp/localhoster/cloudflare.py "$URL/$ROUND"
249                                        $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND" > $TMP/cache."$filename".list
250                                fi
251                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
252#                                       echo $BIN3 /tmp/localhoster/cloudflare.py "$URL/$ROUND"
253                                        $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND" > $TMP/cache."$filename".list
254                                fi
255                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
256#                                       echo $BIN4 /tmp/localhoster/cloudflare.py "$URL/$ROUND"
257                                        $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND" > $TMP/cache."$filename".list
258                                fi
259                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
260#                                       echo $BIN5 /tmp/localhoster/cloudflare.py "$URL/$ROUND"
261                                        $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND" > $TMP/cache."$filename".list
262                                fi
263                                if [ $(cat $TMP/cache."$filename".list | wc -l) -eq 0 ];then
264#                                       echo $BIN6 /tmp/localhoster/cloudflare.py "$URL/$ROUND"
265                                        $BIN /tmp/localhoster/cloudflare.py "$URL/$ROUND" > $TMP/cache."$filename".list
266                                fi
267                                PIC=$URL/`cat $TMP/cache."$filename".list | tr '><' '>\n<' | grep $picname | cut -d '"' -f2 | sort -um`
268                                LANG=`cat $TMP/cache."$filename".list | grep 'alt="language" src="/gr/sys/lng' | sed 's!alt="language" src="/gr/sys/lng/!\n!' | tail -n1 |cut -d"." -f1`
269                        else
270                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
271                                LANG=1
272                        fi
273
274                        LANGTXT=" (de)"
275
276                        if [ ! -z $LANG ];then
277                                if [ $LANG = 1 ];then
278                                        LANGTXT=" (de)"
279                                elif [ $LANG = 2 ];then
280                                        LANGTXT=" (en)"
281                                else
282                                        LANGTXT=" (??)"
283                                fi
284                        fi
285
286                        NEWPAGE="$URL/$ROUND"
287
288                        if [ -z "$PIC" ]; then
289                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
290                        fi
291
292                        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/#034;/\"/g' -e 's/#039;/\"/g' -e 's/&szlig;/\C3x/g' -e 's/&ndash;/-/g' -e 's/&Auml;/\C3/g' -e 's/&Uuml;/\C3S/g' -e 's/&Ouml;/\C3/g' -e 's/&auml;/\E4/g' -e 's/&uuml;/\FC/g' -e 's/&ouml;/\F6/g' -e 's/&eacute;/\E9/g' -e 's/&egrave;/\E8/g' -e 's/%F6/\F6/g' -e 's/%FC/\FC/g' -e 's/%E4/\E4/g' -e 's/%26/&/g' -e 's/%C4/\C3/g' -e 's/%D6/\C3/g' -e 's/%DC/\C3S/g' -e 's/%28/(/g' -e 's/%29/)/g' -e 's/%3A/:/g' -e 's/%40/@/g' -e 's/%2B/&/g' -e 's/%C3/A/g' -e 's/%B1/&/g' -e 's/%5B//g' -e 's/%5D//g' -e 's!%2F!/!g' -e 's/|/ /g' -e 's/(/ /g' -e 's/)/ /g' -e 's/+/ /g' -e 's/\//-/g' -e 's/,/ /g' -e 's/;/ /g' -e 's/:/ /g' -e 's/\.\+/./g'`
293
294                        if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then
295                                if [ ! -e $TMP/$FILENAME.list ];then
296                                        touch $TMP/$FILENAME.list
297                                fi
298                                piccount=`expr $piccount + 1`
299                                LINE="$TITLE$LANGTXT#$NEWPAGE#$PIC#kinox_$piccount.jpg#KinoX#22"
300
301                                echo "$LINE" >> $TMP/$FILENAME.list
302                        fi
303
304                done 3<$TMP/cache.$FILENAME.2
305                rm $TMP/cache.$FILENAME.* > /dev/null 2>&1
306
307        fi
308        echo "$TMP/$FILENAME.list"
309}
310
311case $INPUT in
312        init) $INPUT;;
313        mainmenu) $INPUT;;
314        search) $INPUT;;
315        kino) $INPUT;;
316        sorted) $INPUT;;
317esac
Note: See TracBrowser for help on using the repository browser.