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

Last change on this file since 42464 was 42464, checked in by obi, 18 months ago

tithek testfix speedup init localhoster

  • Property svn:executable set to *
File size: 10.3 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
11PAGE=$3
12NEXT=$4
13PARSER=`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'`
14
15FILENAME="`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'` $INPUT $PAGE $NEXT"
16FILENAME="`echo $FILENAME | sed -e 's/\&\+/./g' -e 's#\/\+#.#g' -e 's/\?\+/./g' -e 's/;\+/./g' -e 's/=\+/./g' -e 's/ \+/./g' -e 's/\.\+/./g'`"
17PICNAME=`echo $FILENAME`
18
19if [ -z "$FILENAME" ]; then
20        FILENAME=none
21fi
22
23#URL=http://www.myspass.de
24URL=http://m.myspass.de
25NAME="MySpass"
26
27mkdir $TMP > /dev/null 2>&1
28
29if [ `echo $SRC | grep ^"/mnt/parser" | wc -l` -gt 0 ];then
30        TYPE="$SRC - Shell script"
31elif [ `echo $SRC | grep ^"/var/swap" | wc -l` -gt 0 ];then
32        TYPE="Swap - Shell script"
33elif [ `echo $SRC | grep ^"/mnt/swapextensions" | wc -l` -gt 0 ];then
34        TYPE="Mnt - Shell script"
35else
36        TYPE="Flash - Shell script"
37fi
38
39init()
40{
41        rm -rf $TMP > /dev/null 2>&1
42        echo "$NAME ($TYPE)#$SRC $SRC mainmenu#http://atemio.dyndns.tv/mediathek/menu/$PARSER.jpg#$PARSER.jpg#TiThek#0"
43}
44
45mainmenu()
46{
47        echo "Ganze Folgen#$SRC $SRC season 'api/index.php?command=formats' 1#http://atemio.dyndns.tv/mediathek/menu/shows.jpg#shows.jpg#$NAME#0" >$TMP/$FILENAME.list
48        echo "Suchen#$SRC $SRC search 'frontend/json/search-videos.php?QUERY_STRING=%search%' 1#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search.jpg#$NAME#112" >>$TMP/$FILENAME.list
49        echo "$TMP/$FILENAME.list"
50}
51
52season()
53{
54        if [ ! -e "$TMP/$FILENAME.list" ]; then
55                $curlbin -o - $URL/$PAGE | sed 's/{"format_id":/\n{"format_id":/g' | awk -v SRC=$SRC -v NAME=$NAME -v PICNAME=$PICNAME -v INPUT=$INPUT -v PAGE=$PAGE -v NEXT=$NEXT \
56                '
57                        # BEGIN variable setzen
58                        BEGIN
59                        {
60                                # setzt suchvariable auf 0 vor dem start
61                                piccount = 0
62                                pages = "1"
63                        }
64                        /"format_id"/ \
65                        {
66                                i = index($0, "\"format_id\":\"") + 13
67                    j = index(substr($0, i), "\",\"") - 1
68                                id = substr($0, i, j)
69
70                                i = index($0, "\"format\":\"") + 10
71                    j = index(substr($0, i), "\",\"") - 1
72                                title = substr($0, i, j)
73
74                                i = index($0, "\"number_of_seasons\":\"") + 21
75                    j = index(substr($0, i), "\",\"") - 1
76                                extra = substr($0, i, j)
77
78                                i = index($0, "\"node_id\":\"") + 11
79                    j = index(substr($0, i), "\"") - 1
80                                newpage = substr($0, i, j)
81                                gsub(/\\/, "", newpage, newpage)
82
83                                i = index($0, "\"original_image\":\"") + 18
84                    j = index(substr($0, i), "\"") - 1
85                                pic = substr($0, i, j)
86                                gsub(/\\/, "", pic, pic)
87
88                                piccount += 1
89                                if ( pic == "" )
90                                {
91                        pic = "http://atemio.dyndns.tv/mediathek/menu/default.jpg"
92                                }
93                                else
94                                        pic = "http:" pic
95
96                                print title " (" extra " Staffeln)#" SRC " " SRC " year \x27api/index.php?command=seasonslist&id=" id "\x27#" pic "#" PICNAME "." piccount ".jpg#" NAME "#0"
97
98                                next
99                        }
100                        END
101                        {
102#                               if (curpage != pages)
103#                                       print "Page (" NEXT + 1 "/" pages ")#" SRC " " SRC " " INPUT " \x27" PAGE "\x27 " NEXT + 1 "#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#" NAME "#0"
104                        }
105                # schreibe alles in die list datei
106                ' >$TMP/$FILENAME.list
107        fi
108        # gebe titan den list namen mit pfad zurueck
109        echo "$TMP/$FILENAME.list"
110}
111
112year()
113{
114        if [ ! -e "$TMP/$FILENAME.list" ]; then
115                $curlbin -o - $URL/$PAGE | sed 's/{"season_id":/\n{"season_id":/g' | awk -v SRC=$SRC -v NAME=$NAME -v PICNAME=$PICNAME -v INPUT=$INPUT -v PAGE=$PAGE -v NEXT=$NEXT \
116                '
117                        # BEGIN variable setzen
118                        BEGIN
119                        {
120                                # setzt suchvariable auf 0 vor dem start
121                                piccount = 0
122                                pages = "1"
123                        }
124                        /"season_id"/ \
125                        {
126                                i = index($0, "\"season_id\":\"") + 13
127                    j = index(substr($0, i), "\",\"") - 1
128                                id = substr($0, i, j)
129
130                                i = index($0, "\"season_number\":\"") + 17
131                    j = index(substr($0, i), "\",\"") - 1
132                                title = substr($0, i, j)
133
134                                i = index($0, "\"season_name\":\"") + 15
135                    j = index(substr($0, i), "\",\"") - 1
136                                extra = substr($0, i, j)
137
138                                i = index($0, "\"node_id\":\"") + 11
139                    j = index(substr($0, i), "\"") - 1
140                                newpage = substr($0, i, j)
141                                gsub(/\\/, "", newpage, newpage)
142
143                                i = index($0, "\"original_image\":\"") + 18
144                    j = index(substr($0, i), "\"") - 1
145                                pic = substr($0, i, j)
146                                gsub(/\\/, "", pic, pic)
147
148                                piccount += 1
149                                if ( pic == "" )
150                                {
151                        pic = "http://atemio.dyndns.tv/mediathek/menu/default.jpg"
152                                }
153                                else
154                                        pic = "http:" pic
155
156                                print "Staffel " title " (" extra ")#" SRC " " SRC " episodes \x27api/index.php?command=seasonepisodes&id=" id "\x27#" pic "#" PICNAME "." piccount ".jpg#" NAME "#0"
157
158                                next
159                        }
160                        END
161                        {
162#                               if (curpage != pages)
163#                                       print "Page (" NEXT + 1 "/" pages ")#" SRC " " SRC " " INPUT " \x27" PAGE "\x27 " NEXT + 1 "#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#" NAME "#0"
164                        }
165                # schreibe alles in die list datei
166                ' >$TMP/$FILENAME.list
167        fi
168        # gebe titan den list namen mit pfad zurueck
169        echo "$TMP/$FILENAME.list"
170}
171
172episodes()
173{
174        if [ ! -e "$TMP/$FILENAME.list" ]; then
175                $curlbin -o - $URL/$PAGE | sed 's/{"format":/\n{"format":/g' | awk -v SRC=$SRC -v NAME=$NAME -v PICNAME=$PICNAME -v INPUT=$INPUT -v PAGE=$PAGE -v NEXT=$NEXT \
176                '
177                        # BEGIN variable setzen
178                        BEGIN
179                        {
180                                # setzt suchvariable auf 0 vor dem start
181                                piccount = 0
182                                pages = "1"
183                        }
184                        /"format"/ \
185                        {
186                                i = index($0, "\"episode_id\":\"") + 14
187                    j = index(substr($0, i), "\",\"") - 1
188                                id = substr($0, i, j)
189
190                                i = index($0, "\"title\":\"") + 9
191                    j = index(substr($0, i), "\",\"") - 1
192                                title = substr($0, i, j)
193                                gsub(" - Teil 1", "", title, title)
194
195                                i = index($0, "\"season_name\":\"") + 15
196                    j = index(substr($0, i), "\",\"") - 1
197                                extra = substr($0, i, j)
198
199                                i = index($0, "\"season_number\":\"") + 17
200                    j = index(substr($0, i), "\",\"") - 1
201                                season = substr($0, i, j)
202
203                                i = index($0, "\"episode_nr\":\"") + 14
204                    j = index(substr($0, i), "\",\"") - 1
205                                episode = substr($0, i, j)
206
207                                i = index($0, "\"myspass_url\":\"") + 15
208                    j = index(substr($0, i), "\"") - 1
209                                newpage = substr($0, i, j)
210                                gsub(/\\/, "", newpage, newpage)
211
212                                i = index($0, "\"original_image\":\"") + 18
213                    j = index(substr($0, i), "\"") - 1
214                                pic = substr($0, i, j)
215                                gsub(/\\/, "", pic, pic)
216
217                                piccount += 1
218                                if ( pic == "" )
219                                {
220                        pic = "http://atemio.dyndns.tv/mediathek/menu/default.jpg"
221                                }
222                                print "S" season "E" episode " - " title "#" SRC " " SRC " parts \x27" newpage "\x27#http:" pic "#" PICNAME "." piccount ".jpg#" NAME "#0"
223
224                                next
225                        }
226                        END
227                        {
228#                               if (curpage != pages)
229#                                       print "Page (" NEXT + 1 "/" pages ")#" SRC " " SRC " " INPUT " \x27" PAGE "\x27 " NEXT + 1 "#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#" NAME "#0"
230                        }
231                # schreibe alles in die list datei
232                ' >$TMP/$FILENAME.list
233        fi
234        # gebe titan den list namen mit pfad zurueck
235        echo "$TMP/$FILENAME.list"
236}
237
238search()
239{
240        if [ ! -e "$TMP/$FILENAME.list" ]; then
241                $curlbin -o - $URL/$PAGE | sed 's/{"uniqueID":/\n{"uniqueID":/g' | awk -v SRC=$SRC -v NAME=$NAME -v PICNAME=$PICNAME -v INPUT=$INPUT -v PAGE=$PAGE -v NEXT=$NEXT \
242                '
243                        # BEGIN variable setzen
244                        BEGIN
245                        {
246                                # setzt suchvariable auf 0 vor dem start
247                                piccount = 0
248                                pages = "1"
249                        }
250                        /"uniqueID"/ \
251                        {
252#                       print "1111111" $0
253                                i = index($0, "\"title\":\"") + 9
254                    j = index(substr($0, i), "\",\"") - 1
255                                title = substr($0, i, j)
256#                       print "title: " title
257
258                                i = index($0, "\"broadcast\":\"") + 13
259                    j = index(substr($0, i), "\",\"") - 1
260                                extra = substr($0, i, j)
261#                       print "extra: " extra
262
263                                i = index($0, "\"url\":\"") + 7
264                    j = index(substr($0, i), "\"") - 1
265                                newpage = substr($0, i, j)
266                                gsub(/\\/, "", newpage, newpage)
267
268#                       print "newpage: " newpage
269
270                                i = index($0, "\"teaser\":\"") + 10
271                    j = index(substr($0, i), "\"") - 1
272                                pic = substr($0, i, j)
273                                gsub(/\\/, "", pic, pic)
274#                       print "pic: " pic
275
276                                piccount += 1
277                                if ( pic == "" )
278                                {
279                        pic = "http://atemio.dyndns.tv/mediathek/menu/default.jpg"
280                                }
281                                print title " (" extra ")#" SRC " " SRC " hoster \x27" newpage "\x27#" pic "#" PICNAME "." piccount ".jpg#" NAME "#111"
282                                next
283                        }
284                        END
285                        {
286#                               if (curpage != pages)
287#                                       print "Page (" NEXT + 1 "/" pages ")#" SRC " " SRC " " INPUT " \x27" PAGE "\x27 " NEXT + 1 "#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#" NAME "#0"
288                        }
289                # schreibe alles in die list datei
290                ' >$TMP/$FILENAME.list
291        fi
292        # gebe titan den list namen mit pfad zurueck
293        echo "$TMP/$FILENAME.list"
294}
295
296hoster()
297{
298        echo $URL$PAGE
299}
300
301play()
302{
303        echo $URL$PAGE
304}
305
306parts()
307{
308        rm $TMP/$FILENAME.list
309        if [ ! -e "$TMP/$FILENAME.list" ]; then
310                FOUND=`echo $PAGE | sed 's/Teil/\n/g' | grep ^http | sed 's!http://www.myspass.de/myspass!!g' | sed 's!http://www.myspass.de!!g'`
311#               IDLIST=`$curlbin "$PAGE" | grep "$FOUND" | sed 's/<a href=/\nfound=/g' | grep ^found= | grep title= | grep -v myspassTeaserTextDesc | cut -d '"' -f2 | sort -u | tr '/' ' ' | awk '{ print $NF }'`
312                IDLIST=`$curlbin "$PAGE" | grep "$FOUND"| sed 's/<a href=/\nfound=/g' | grep ^found= | tr -d ' ' | cut -d "/" -f6 | sort -u`
313
314                for ROUND in $IDLIST; do
315                        $curlbin http://www.myspass.de/includes/apps/video/getvideometadataxml.php?id=$ROUND > "$TMP/cache.$FILENAME.$ROUND.1"
316                       
317                        #       <title><![CDATA[23. September 2006 - Teil 1]]></title>
318                        #       <url_flv><![CDATA[http://x3583brainc11021.s.o.l.lb.core-cdn.net/secdl/9b7b49482bf7ba65145bc28c6c3ac7b5/58ea7331/11021brainpool/ondemand/3583brainpool/163840/myspass2009/82/578/9231/12073/12073_61.mp4]]></url_flv>
319                        #       <imagePreview><![CDATA[//www.myspass.de/myspass/media/images/videos/73/12073_640x360.jpg]]></imagePreview>
320
321                        TITLE="`cat $TMP/cache.$FILENAME.$ROUND.1 | sed 's/<title><!\[CDATA\[/\nfound=\]/g' | grep ^found= | cut -d"]" -f2`"
322                        NEWPAGE="`cat $TMP/cache.$FILENAME.$ROUND.1 | sed 's/<url_flv><!\[CDATA\[/\nfound=\]/g' | grep ^found= | cut -d"]" -f2`"
323                        PIC="http:`cat $TMP/cache.$FILENAME.$ROUND.1 | sed 's/<imagePreview><!\[CDATA\[/\nfound=\]/g' | grep ^found= | cut -d"]" -f2`"
324
325                        if [ -z "$PIC" ] || "$PIC" = "http:" ] ; then
326                                PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg"
327                        fi
328
329                        echo "$TITLE#$NEWPAGE#$PIC#$PICNAME$piccount.jpg#$NAME#2" >> $TMP/$FILENAME.list
330
331                done
332        fi
333
334        echo "$TMP/$FILENAME.list"
335}
336
337case $INPUT in
338        init) $INPUT;;
339        mainmenu) $INPUT;;
340        search) $INPUT;;
341        season) $INPUT;;
342        year) $INPUT;;
343        episodes) $INPUT;;
344        play) $INPUT;;
345        parts) $INPUT;;
346esac
Note: See TracBrowser for help on using the repository browser.