source: titan/mediathek/localparser_secret/goldesel.sh @ 39554

Last change on this file since 39554 was 39554, checked in by tt4sk, 5 years ago

[TiThek] speed optimization in goldesel.sh

  • Property svn:executable set to *
File size: 8.9 KB
Line 
1#!/bin/sh
2# first sh box parser for titannit mfg obi
3
4. /tmp/localhoster/hoster.sh
5
6SRC=$1
7INPUT=$2
8PAGE=$3
9
10FILENAME=`echo $PAGE | tr '/' '.'`
11FILENAME=`echo $FILENAME | tr '&' '.'`
12
13if [ -z "$PAGE" ]; then
14        FILENAME=none
15fi
16
17URL=http://goldesel.to
18PARSER=`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'`
19NAME=Goldesel
20
21mkdir $TMP > /dev/null 2>&1
22
23if [ `echo $SRC | grep ^"/mnt/parser" | wc -l` -gt 0 ];then
24        TYPE="$SRC - Shell script"
25elif [ `echo $SRC | grep ^"/var/swap" | wc -l` -gt 0 ];then
26        TYPE="Swap - Shell script"
27elif [ `echo $SRC | grep ^"/mnt/swapextensions" | wc -l` -gt 0 ];then
28        TYPE="Mnt - Shell script"
29else
30        TYPE="Flash - Shell script"
31fi
32
33init()
34{
35        rm -rf $TMP > /dev/null 2>&1
36        echo "$NAME ($TYPE)#$SRC $SRC mainmenu#http://atemio.dyndns.tv/mediathek/menu/$PARSER.jpg#$PARSER.jpg#TiThek#0"
37}
38
39mainmenu()
40{
41        echo "Kinofilme#$SRC $SRC new '/'#http://atemio.dyndns.tv/mediathek/menu/all-newfirst.jpg#all-newfirst.jpg#$NAME#0" > $TMP/$PARSER.$INPUT.list
42        echo "Filme#$SRC $SRC page 'filme'#http://atemio.dyndns.tv/mediathek/menu/Movies.jpg#Movies.jpg#$NAME#0" >> $TMP/$PARSER.$INPUT.list
43
44        if [ -e "$TMP/$PARSER.new.list" ] ; then
45                rm $TMP/$PARSER.new.list
46        fi
47        if [ -e "$TMP/$PARSER.page.list" ] ; then
48                rm $TMP/$PARSER.page.list
49        fi
50
51        echo "$TMP/$PARSER.$INPUT.list"
52}
53
54#
55#  <form id="challenge-form" action="/cdn-cgi/l/chk_jschl" method="get">
56#    <input type="hidden" name="jschl_vc" value="528818834f8ad23629ea5d31c3a5390c"/>
57#    <input type="hidden" name="pass" value="1479475035.975-uJ99NUZ87d"/>
58#    <input type="hidden" id="jschl-answer" name="jschl_answer"/>
59#  </form>
60
61#http://goldesel.to/cdn-cgi/l/chk_jschl?jschl_vc=f29b5aecef651bc1df9cad068c58848c&pass=1479474954.758-6i1RP0vPFz&jschl_answer=2914582
62#
63
64new()
65{
66        if [ ! -e "$TMP/$PARSER.$INPUT.list" ] ; then
67#               $curlbin $URL/$PAGE -o $TMP/cache.$PARSER.$INPUT.0
68
69#               DATA=`cat $TMP/cache.$PARSER.$INPUT.0 | sed 's/ \+/ /g' | sed 's/<form id=/\nfound=/g' | grep ^found=`
70
71#               actionpath=`cat $TMP/cache.$PARSER.$INPUT.0 | tr '\n' ' ' | sed 's/ \+/ /g' | sed 's/<form id=/\nfound=/g' | grep ^found= | sed 's/action=/\naction=/g' | grep ^action= | cut -d'"' -f2`
72#               jschlvc=`cat $TMP/cache.$PARSER.$INPUT.0 | tr '\n' ' ' | sed 's/ \+/ /g' | sed 's/<form id=/\nfound=/g' | grep ^found= | sed 's/"jschl_vc"/\njschl_vc=/g' | grep ^jschl_vc= | cut -d'"' -f2`
73#               pass=`cat $TMP/cache.$PARSER.$INPUT.0 | tr '\n' ' ' | sed 's/ \+/ /g' | sed 's/<form id=/\nfound=/g' | grep ^found= | sed 's/"pass"/\npass=/g' | grep ^pass= | cut -d'"' -f2`
74#               jschlanswer=2914582
75#               `cat $TMP/cache.$PARSER.$INPUT.0 | tr '\n' ' ' | sed 's/ \+/ /g' | sed 's/<form id=/\nfound=/g' | grep ^found= | sed 's/"jschl-answer"/\njschl-answer=/g' | grep ^jschl-answer= | cut -d'"' -f2`
76
77#               echo actionpath $actionpath
78#               echo jschlvc $jschlvc
79#               echo pass $pass
80#               echo jschlanswer $jschlanswer
81
82#               echo 222 "$URL"/"$actionpath"?jschl_vc="$jschlvc"&pass="$pass"&jschl_answer="$jschlanswer"
83
84#               $curlbin "$URL/$actionpath?jschl_vc=$jschlvc&pass=$pass&jschl_answer=$jschlanswer" -o $TMP/cache.$PARSER.$INPUT.00
85#               echo $TMP/cache.$PARSER.$INPUT.00
86#               exit
87
88#               $curlbin $URL/$PAGE -o $TMP/cache.$PARSER.$INPUT.1
89
90                /tmp/localhoster/hoster.sh get $URL/$PAGE > $TMP/cache.$PARSER.$INPUT.1
91
92                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="film' | grep title= | sed 's/ /~/g' >$TMP/cache.$PARSER.$INPUT.2
93
94                while read -u 3 ROUND; do
95                        TITLE=`echo $ROUND | sed 's/title=/\ntitle=/' | grep ^"title=" | cut -d '"' -f2 | tr '~' ' ' | sed 's/#/%/'`
96                        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;/Ãx/g' -e 's/&ndash;/-/g' -e 's/&Auml;/Ã/g' -e 's/&Uuml;/ÃS/g' -e 's/&Ouml;/Ã/g' -e 's/&auml;/ä/g' -e 's/&uuml;/ü/g' -e 's/&ouml;/ö/g' -e 's/&eacute;/é/g' -e 's/&egrave;/è/g' -e 's/%F6/ö/g' -e 's/%FC/ü/g' -e 's/%E4/ä/g' -e 's/%26/&/g' -e 's/%C4/Ã/g' -e 's/%D6/Ã/g' -e 's/%DC/Ã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' -e 's/\.\+/./g'`
97                        PIC=$URL/`echo $ROUND | sed s'!<img~src=!\nsrc=!' | grep ^"src=" | cut -d '"' -f2 | tr '~' ' '`
98                        NEWPAGE=`echo $ROUND | sed 's/<a~href=/\nhref=/' | grep ^"href=" | cut -d '"' -f2`
99
100                        if [ "$PIC" == "$URL/" ] ; then 
101                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
102                                TMPPIC="default.jpg"
103                        else
104                                TMPPIC=goldesel_`echo $PIC | cut -d '/' -f6`
105                        fi
106
107                        if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then
108                                if [ `cat $TMP/$PARSER.$INPUT.list | grep ^"$NEWPAGE" | wc -l` -eq 0 ];then
109                                        if [ ! -e $TMP/$PARSER.$INPUT.list ];then
110                                                touch $TMP/$PARSER.$INPUT.list
111                                        fi
112                                        LINE="$TITLE#$SRC $SRC hosterlist $NEWPAGE#$PIC#$TMPPIC#$NAME#0"
113                                        echo "$LINE" >> $TMP/$PARSER.$INPUT.list
114                                fi
115                        fi
116                done 3<$TMP/cache.$PARSER.$INPUT.2
117#               rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
118        fi
119
120        if [ -e "$TMP/$PARSER.hosterlist.list" ] ; then
121                rm $TMP/$PARSER.hosterlist.list
122        fi
123
124        echo "$TMP/$PARSER.$INPUT.list"
125}
126
127page()
128{
129        if [ ! -e "$TMP/$PARSER.$INPUT.list" ] ; then
130#               $curlbin $URL/$PAGE -o $TMP/cache.$PARSER.$INPUT.1
131                /tmp/localhoster/hoster.sh get $URL/$PAGE > $TMP/cache.$PARSER.$INPUT.1
132
133                cat $TMP/cache.$PARSER.$INPUT.1 | sed 's/<p><ul class="rls_table/\n<p><ul class=rls_table/g' | sed 's/<\/ul><\/u>/<\/ul><\/u>\n/g' | grep ^'<p><ul class=rls_table' | sed 's/<a href="/\n<a href="/g' | sed 's/<li step=/\n<li step=/g' | grep ^'<a href=' | grep 'tba">VID' | sed 's/ /~/g' >$TMP/cache.$PARSER.$INPUT.2
134
135                while read -u 3 ROUND; do
136                        TITLE=`echo $ROUND |  sed -e 's/"tle~bold"/"tle"/g' -e 's/<div~class="tle">/\n<div~class="tle""/' -e 's/<b/"b/g' | grep ^'<div~class="tle""' | cut -d '"' -f4 | tr '~' ' ' | sed 's/#/%/'`
137                        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;/Ãx/g' -e 's/&ndash;/-/g' -e 's/&Auml;/Ã/g' -e 's/&Uuml;/ÃS/g' -e 's/&Ouml;/Ã/g' -e 's/&auml;/ä/g' -e 's/&uuml;/ü/g' -e 's/&ouml;/ö/g' -e 's/&eacute;/é/g' -e 's/&egrave;/è/g' -e 's/%F6/ö/g' -e 's/%FC/ü/g' -e 's/%E4/ä/g' -e 's/%26/&/g' -e 's/%C4/Ã/g' -e 's/%D6/Ã/g' -e 's/%DC/Ã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' -e 's/\.\+/./g'`
138                        PIC=$URL/`echo $ROUND | sed s'/data-original=/\ndata-original=/' | grep ^'data-original=' | cut -d '"' -f2 | sed 's/\/mini\//\/poster\//g'`
139                        NEWPAGE=`echo $ROUND | cut -d '"' -f2`
140       
141                        if [ "$PIC" == "$URL/" ] ; then
142                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
143                                TMPPIC="default.jpg"
144                        else
145                                TMPPIC=goldesel_`echo $PIC | cut -d '/' -f6`
146                        fi
147
148                        if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ] ; then
149                                LINE="$TITLE#$SRC $SRC hosterlist $NEWPAGE#$PIC#$TMPPIC#$NAME#0"
150                                echo "$LINE" >> $TMP/$PARSER.$INPUT.list
151                        fi
152                done 3<$TMP/cache.$PARSER.$INPUT.2
153                rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
154        fi
155
156        if [ -e "$TMP/$PARSER.hosterlist.list" ] ; then
157                rm $TMP/$PARSER.hosterlist.list
158        fi
159               
160        echo "$TMP/$PARSER.$INPUT.list"
161}
162
163hosterlist()
164{
165        if [ ! -e "$TMP/$PARSER.$INPUT.list" ] ; then
166                $curlbin $URL/$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'
167#               /tmp/localhoster/hoster.sh get $URL/$PAGE > $TMP/cache.$PARSER.$INPUT.1
168
169                cat $TMP/cache.$PARSER.$INPUT.1 | sed 's!<h2>Stream-Links</h2>!\nfound=!g' | sed 's!<h2>Sample-Links</h2>!\nerror=!g' | grep ^found= | sed 's/<li data=/\ndata=/g' | grep ^data= >$TMP/cache.$PARSER.$INPUT.2
170
171                while read -u 3 ROUND; do
172                        NEWPAGE="data=`echo $ROUND | cut -d '"' -f2 | sed 's/;/%3B/g'`"
173                        TITLE=`echo $ROUND | cut -d ';' -f5 | cut -d '.' -f1`
174                        if [ ! -z "$TITLE" ] && [ "$TITLE" != " " ] && [ ! -z "$NEWPAGE" ];then
175                                PIC=`echo $TITLE | tr [A-Z] [a-z]`
176                                LINE="$TITLE#$SRC $SRC hoster $NEWPAGE '--referer $URL/$PAGE'#http://atemio.dyndns.tv/mediathek/menu/$PIC.jpg#$PIC.jpg#$NAME#111"
177                                echo "$LINE" >> $TMP/$PARSER.$INPUT.list
178                        fi
179                done 3<$TMP/cache.$PARSER.$INPUT.2
180                rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
181        fi
182
183        if [ -e "$TMP/$PARSER.hoster.list" ] ; then
184                rm $TMP/$PARSER.hoster.list
185        fi
186
187        echo "$TMP/$PARSER.$INPUT.list"
188}
189
190hoster()
191{
192        if [ ! -e "$TMP/$PARSER.$INPUT.list" ] ; then
193                $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'
194                cat $TMP/cache.$PARSER.$INPUT.1 | sed 's!url="http://dref.me/?!\nstreamurl="!' | grep ^streamurl= | cut -d'"' -f2 | sed 's!%3A!:!g' | sed 's!%2F!/!g' > $TMP/$PARSER.$INPUT.list
195#               rm $TMP/cache.$PARSER.$INPUT.* > /dev/null 2>&1
196        fi
197        cat $TMP/$PARSER.$INPUT.list
198}
199
200case $INPUT in
201        init) $INPUT;;
202        mainmenu) $INPUT;;
203        new) $INPUT;;
204        page) $INPUT;;
205        hosterlist) $INPUT;;
206        hoster) $INPUT;;
207esac
Note: See TracBrowser for help on using the repository browser.