1 | #!/bin/sh |
---|
2 | # first sh box parser for titannit mfg obi |
---|
3 | |
---|
4 | SRC=$1 |
---|
5 | INPUT=$2 |
---|
6 | PAGE=$3 |
---|
7 | |
---|
8 | URL=http://www.7tv.de/ |
---|
9 | PARSER=`echo $SRC | tr '/' '\n' | tail -n1 | sed 's/.sh//'` |
---|
10 | NAME=7tv |
---|
11 | |
---|
12 | case $2 in |
---|
13 | init) ;; |
---|
14 | *) . /tmp/localhoster/hoster.sh |
---|
15 | mkdir $TMP > /dev/null 2>&1 |
---|
16 | FILENAME="$PARSER $INPUT $PAGE" |
---|
17 | FILENAME=$(echo $FILENAME | tr '&' '.' | tr '/' '.' | tr '?' '.' | tr '=' '.' | sed -e 's/\&\+/./g' -e 's#\/\+#.#g' -e 's/\?\+/./g' -e 's/;\+/./g' -e 's/=\+/./g' -e 's/ \+/./g' -e 's/\.\+/./g') |
---|
18 | if [ -z "$FILENAME" ]; then FILENAME=none;fi |
---|
19 | PICNAME="$FILENAME" |
---|
20 | ;; |
---|
21 | esac |
---|
22 | |
---|
23 | |
---|
24 | if [ `echo $SRC | grep ^"/mnt/parser" | wc -l` -gt 0 ];then |
---|
25 | TYPE="$SRC - Shell script" |
---|
26 | elif [ `echo $SRC | grep ^"/var/swap" | wc -l` -gt 0 ];then |
---|
27 | TYPE="Swap - Shell script" |
---|
28 | elif [ `echo $SRC | grep ^"/mnt/swapextensions" | wc -l` -gt 0 ];then |
---|
29 | TYPE="Mnt - Shell script" |
---|
30 | else |
---|
31 | TYPE="Flash - Shell script" |
---|
32 | fi |
---|
33 | |
---|
34 | init() |
---|
35 | { |
---|
36 | # rm -f /mnt/network/cookies > /dev/null 2>&1 |
---|
37 | rm -rf $TMP > /dev/null 2>&1 |
---|
38 | echo "$NAME ($TYPE)#$SRC $SRC mainmenu#http://atemio.dyndns.tv/mediathek/menu/$PARSER.jpg#$PARSER.jpg#TiThek#0" |
---|
39 | } |
---|
40 | |
---|
41 | mainmenu() |
---|
42 | { |
---|
43 | echo "Search Serien#$SRC $SRC search '7tvsearch/search/query/%search%/type/format/offset/0/limit/5'#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search.jpg#$NAME#112" >$TMP/$FILENAME.list |
---|
44 | echo "Search Clips#$SRC $SRC search '7tvsearch/search/query/%search%/type/clip/offset/0/limit/5'#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search.jpg#$NAME#112" >>$TMP/$FILENAME.list |
---|
45 | echo "Search Ganue Folgen#$SRC $SRC search '7tvsearch/search/query/%search%/type/episode/offset/0/limit/5'#http://atemio.dyndns.tv/mediathek/menu/search.jpg#search.jpg#$NAME#112" >>$TMP/$FILENAME.list |
---|
46 | echo "$TMP/$FILENAME.list" |
---|
47 | } |
---|
48 | |
---|
49 | #13:22:35.345 T:140602909902592 DEBUG: [plugin.video.7tvneu-1.0.1](searchtext) URL-x : https://www.7tv.de/7tvsearch/search/query/big+brother/type/format/offset/0/limit/5 |
---|
50 | #suche big broter |
---|
51 | # |
---|
52 | #serien |
---|
53 | #14:07:13.118 T:139913047566080 DEBUG: 'GET /7tvsearch/search/query/big+brother/type/format/offset/0/limit/5 HTTP/1.1\r\nHost: www.7tv.de\r\nConnection: close\r\nAccept-Encoding: gzip, deflate\r\n\r\n' |
---|
54 | # |
---|
55 | #clips |
---|
56 | #14:08:13.114 T:139913047566080 DEBUG: 'GET /7tvsearch/search/query/big+brother/type/clip/offset/0/limit/5 HTTP/1.1\r\nHost: www.7tv.de\r\nConnection: close\r\nAccept-Encoding: gzip, deflate\r\n\r\n' |
---|
57 | # |
---|
58 | #ganue folgen |
---|
59 | #14:09:21.003 T:139914294122240 DEBUG: 'GET /7tvsearch/search/query/big+brother/type/episode/offset/0/limit/5 HTTP/1.1\r\nHost: www.7tv.de\r\nConnection: close\r\nAccept-Encoding: gzip, deflate\r\n\r\n' |
---|
60 | |
---|
61 | search() |
---|
62 | { |
---|
63 | if [ ! -e "$TMP/$FILENAME.list" ]; then |
---|
64 | piccount=0 |
---|
65 | |
---|
66 | $curlbin $URL/$PAGE$NEXT$PAGE2 -o $TMP/cache.$FILENAME.1 |
---|
67 | # $BIN /tmp/localhoster/cloudflare.py "$URL/$PAGE$NEXT$PAGE2" > $TMP/cache.$FILENAME.1 |
---|
68 | |
---|
69 | pages=`cat $TMP/cache.$FILENAME.1 | grep $PAGE | sed "s/$PAGE/\n$PAGE/g" | cut -d ">" -f2 | cut -d "<" -f1 | tail -n1` |
---|
70 | if [ -z "$pages" ];then |
---|
71 | pages=0 |
---|
72 | fi |
---|
73 | cat $TMP/cache.$FILENAME.1 | tr '\n' ' ' | sed 's!<a href=!\n<a href=!g' | grep ^"<a href=" >$TMP/cache.$FILENAME.2 |
---|
74 | |
---|
75 | while read -u 3 ROUND; do |
---|
76 | ID=`echo $ROUND | cut -d'"' -f1 | tail -n1` |
---|
77 | NEWPAGE=`echo $ROUND | sed -nr 's/.*<a href="([^"]+)".*/\1/p'` |
---|
78 | TITLE=`echo $NEWPAGE | tr '-' ' ' | sed 's!/!!'` |
---|
79 | PIC=`echo $ROUND | sed -nr 's/.*data-src="([^"]+)".*/\1/p'` |
---|
80 | |
---|
81 | if [ -z "$PIC" ]; then |
---|
82 | PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg" |
---|
83 | fi |
---|
84 | TITLE=`echo $TITLE | sed -e 's/&/&/g' -e 's/&/und/g' -e 's/"/"/g' -e 's/</\</g' -e 's/"/\"/g' -e 's/'/\"/g' -e 's/#034;/\"/g' -e 's/#039;/\"/g' -e 's/ß/\C3x/g' -e 's/–/-/g' -e 's/Ä/\C3/g' -e 's/Ü/\C3S/g' -e 's/Ö/\C3/g' -e 's/ä/ä/g' -e 's/ü/ü/g' -e 's/ö/ö/g' -e 's/é/é/g' -e 's/è/è/g' -e 's/%F6/ö/g' -e 's/%FC/ü/g' -e 's/%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'` |
---|
85 | |
---|
86 | if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then |
---|
87 | if [ ! -e $TMP/$FILENAME.list ];then |
---|
88 | touch $TMP/$FILENAME.list |
---|
89 | fi |
---|
90 | piccount=`expr $piccount + 1` |
---|
91 | |
---|
92 | LINE="$TITLE (ganze-folgen)#$SRC $SRC episode $NEWPAGE/ganze-folgen#$PIC#$PARSER.$INPUT.$NEXT.$PAGE2.$FILENAME.$piccount.jpg#$NAME#0" |
---|
93 | echo "$LINE" >> $TMP/$FILENAME.list |
---|
94 | |
---|
95 | LINE="$TITLE (alle-clips)#$SRC $SRC episode $NEWPAGE/alle-clips#$PIC#$PARSER.$INPUT.$NEXT.$PAGE2.$FILENAME.$piccount.jpg#$NAME#0" |
---|
96 | echo "$LINE" >> $TMP/$FILENAME.list |
---|
97 | fi |
---|
98 | |
---|
99 | done 3<$TMP/cache.$FILENAME.2 |
---|
100 | rm $TMP/cache.$FILENAME.* > /dev/null 2>&1 |
---|
101 | fi |
---|
102 | echo "$TMP/$FILENAME.list" |
---|
103 | } |
---|
104 | |
---|
105 | episode() |
---|
106 | { |
---|
107 | if [ ! -e "$TMP/$FILENAME.list" ]; then |
---|
108 | piccount=0 |
---|
109 | |
---|
110 | $curlbin $URL/$PAGE$NEXT$PAGE2 -o $TMP/cache.$FILENAME.1 |
---|
111 | # $BIN /tmp/localhoster/cloudflare.py "$URL/$PAGE$NEXT$PAGE2" > $TMP/cache.$FILENAME.1 |
---|
112 | |
---|
113 | if [ -z "$NEXT" ];then |
---|
114 | NEXT=1 |
---|
115 | fi |
---|
116 | pages=`cat $TMP/cache.$FILENAME.1 | grep $PAGE | sed "s/$PAGE/\n$PAGE/g" | cut -d ">" -f2 | cut -d "<" -f1 | tail -n1` |
---|
117 | if [ -z "$pages" ];then |
---|
118 | pages=0 |
---|
119 | fi |
---|
120 | cat $TMP/cache.$FILENAME.1 | tr '\n' ' ' | sed 's!<a href=!\n<a href=!g' | grep ^"<a href=" | grep "teaser-img" | grep "data-track" >$TMP/cache.$FILENAME.2 |
---|
121 | |
---|
122 | while read -u 3 ROUND; do |
---|
123 | ID=`echo $ROUND | cut -d'"' -f1 | tail -n1` |
---|
124 | NEWPAGE=`echo $ROUND | sed -nr 's/.*<a href="([^"]+)".*/\1/p'` |
---|
125 | TITLE=`echo $ROUND | sed -nr 's/.*title="([^"]+)".*/\1/p'` |
---|
126 | if [ -z "$TITLE" ]; then |
---|
127 | TITLE=`echo $NEWPAGE | tr '-' ' ' | sed 's!/!!'` |
---|
128 | fi |
---|
129 | |
---|
130 | TITLE=`echo $TITLE | tr '-' '\n' | tail -n3 | tr '\n' '-'` |
---|
131 | |
---|
132 | PIC=`echo $ROUND | sed -nr 's/.*data-src="([^"]+)".*/\1/p'` |
---|
133 | |
---|
134 | if [ -z "$PIC" ]; then |
---|
135 | PIC="http://atemio.dyndns.tv/mediathek/menu/default.jpg" |
---|
136 | fi |
---|
137 | |
---|
138 | TITLE=`echo $TITLE | sed -e 's/&/&/g' -e 's/&/und/g' -e 's/"/"/g' -e 's/</\</g' -e 's/"/\"/g' -e 's/'/\"/g' -e 's/#034;/\"/g' -e 's/#039;/\"/g' -e 's/ß/\C3x/g' -e 's/–/-/g' -e 's/Ä/\C3/g' -e 's/Ü/\C3S/g' -e 's/Ö/\C3/g' -e 's/ä/ä/g' -e 's/ü/ü/g' -e 's/ö/ö/g' -e 's/é/é/g' -e 's/è/è/g' -e 's/%F6/ö/g' -e 's/%FC/ü/g' -e 's/%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'` |
---|
139 | |
---|
140 | if [ ! -z "$TITLE" ] && [ ! -z "$NEWPAGE" ];then |
---|
141 | if [ ! -e $TMP/$FILENAME.list ];then |
---|
142 | touch $TMP/$FILENAME.list |
---|
143 | fi |
---|
144 | piccount=`expr $piccount + 1` |
---|
145 | |
---|
146 | # LINE="$TITLE#$SRC $SRC episodetvlist $NEWPAGE#$PIC#$PARSER.$INPUT.$NEXT.$PAGE2.$FILENAME.$piccount.jpg#$NAME#0" |
---|
147 | LINE="$TITLE#$SRC $SRC play '$NEWPAGE'#$PIC#$FILENAME.$piccount.jpg#$NAME#111" |
---|
148 | |
---|
149 | echo "$LINE" >> $TMP/$FILENAME.list |
---|
150 | |
---|
151 | fi |
---|
152 | |
---|
153 | done 3<$TMP/cache.$FILENAME.2 |
---|
154 | |
---|
155 | PAGE=`cat $TMP/cache.$FILENAME.1 | sed -nr 's/.*data-ajax-more="([^"]+)".*/\1/p'` |
---|
156 | |
---|
157 | if [ ! -z "$PAGE" ];then |
---|
158 | # if [ "$NEXT" -lt "$pages" ]; then |
---|
159 | NEXTPAGE=`expr $NEXT + 1` |
---|
160 | # LINE="Page ($NEXTPAGE/$pages)#$SRC $SRC episodetv '$PAGE' $NEXTPAGE '$PAGE2'#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#$NAME#0" |
---|
161 | LINE="Page (+1)#$SRC $SRC episode '$PAGE' $NEXTPAGE '$PAGE2'#http://atemio.dyndns.tv/mediathek/menu/next.jpg#next.jpg#$NAME#0" |
---|
162 | echo "$LINE" >> $TMP/$FILENAME.list |
---|
163 | # fi |
---|
164 | fi |
---|
165 | rm $TMP/cache.$FILENAME.* > /dev/null 2>&1 |
---|
166 | fi |
---|
167 | echo "$TMP/$FILENAME.list" |
---|
168 | } |
---|
169 | |
---|
170 | play() |
---|
171 | { |
---|
172 | /tmp/localhoster/hoster.sh youtube_dl $PAGE |
---|
173 | } |
---|
174 | |
---|
175 | |
---|
176 | case $INPUT in |
---|
177 | init) $INPUT;; |
---|
178 | mainmenu) $INPUT;; |
---|
179 | play) $INPUT;; |
---|
180 | search) $INPUT;; |
---|
181 | episode) $INPUT;; |
---|
182 | episodelist) $INPUT;; |
---|
183 | esac |
---|