My favorites | Sign in
Project Home Downloads Wiki Issues Source
Checkout   Browse   Changes    
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# ----------------------------------------------------------------------------
# Mostra a programação corrente ou de uma emissora no dia ou semana.
#
# TV aberta:
# bandeirantes ou band, cultura, gazeta, globo, mtv, sbt, cnt,
# record, record_news ou recordnews ou rnews, tv_brasil ou tvbrasil,
# rede_21 ou rede21 ou r21, redetv ou rede_tv ou rtv.
#
# Outras canais:
# megapix, cinemax, cinemax_e, max_prime, max_prime_e, tcm,
# hbo, hbo2, hbo_plus, hbo_plus, hbo_family, hbo_family_e, hbo_hd, tnt, mgm,
# telecine_premium, telecine_action, telecine, telecine_pipoca, telecine_cult,
# telecine_hd, space, space_hd, canal_brasil, trutv, trutv_hd.
#
# Programação corrente:
# doc ou documentario, variedades, infantil, esporte ou esportes ou futebol,
# series ou seriados, filmes, todos ou agora (padrão).
#
# Se o segundo argumento for "semana" ou "s" mostra toda programação semanal.
# Opção só é válida para os canais.
# Se o primeiro argumento é cod seguido de um número, obtido pelas listagens
# citadas anteriormente, com segundo argumento, mostra um resumo do programa.
# Uso: zztv <emissora> [semana|s]
# zztv cod <numero>
# Ex.: zztv cultura
# zztv cod 3235238
#
# Autor: Aurelio Marinho Jargas, www.aurelio.net - revisado por Itamar.
# Desde: 2002-02-19
# Versão: 4
# Licença: GPL
# ----------------------------------------------------------------------------
zztv ()
{
zzzz -h tv "$1" && return

local DATA=$(date +%d\\/%m)
local URL="http://meuguia.tv/programacao"

# 0 = lista canal especifico
# 1 = lista programas de vários canais no horário
local flag=0

case "$1" in
bandeirantes|band) URL="${URL}/canal/BAN";;
cultura) URL="${URL}/canal/CUL";;
gazeta) URL="${URL}/canal/GAZ";;
mtv) URL="${URL}/canal/MTV";;
record) URL="${URL}/canal/REC";;
record_news|recordnews|rnews) URL="${URL}/canal/RCN";;
rede_21|rede21|r21) URL="${URL}/canal/C21";;
cnt) URL="${URL}/canal/CNT";;
redetv|rede_tv|rtv) URL="${URL}/canal/RTV";;
sbt) URL="${URL}/canal/SBT";;
tv_brasil|tvbrasil) URL="${URL}/canal/TED";;
globo) URL="${URL}/canal/GRD";;
megapix) URL="${URL}/canal/MPX";;
cinemax) URL="${URL}/canal/MAX";;
hbo) URL="${URL}/canal/HBO";;
hbo2) URL="${URL}/canal/HB2";;
hbo_plus) URL="${URL}/canal/HPL";;
hbo_plus) URL="${URL}/canal/HPE";;
hbo_family) URL="${URL}/canal/HFA";;
hbo_family_e) URL="${URL}/canal/HFE";;
hbo_hd) URL="${URL}/canal/HBH";;
max_prime) URL="${URL}/canal/MAP";;
max_prime_e) URL="${URL}/canal/MPE";;
tcm) URL="${URL}/canal/TCM";;
telecine_premium) URL="${URL}/canal/TC1";;
telecine_action) URL="${URL}/canal/TC2";;
telecine) URL="${URL}/canal/TC3";;
telecine_pipoca) URL="${URL}/canal/TC4";;
telecine_cult) URL="${URL}/canal/TC5";;
telecine_hd) URL="${URL}/canal/TCH";;
space) URL="${URL}/canal/SPA";;
space_hd) URL="${URL}/canal/SPH";;
tnt) URL="${URL}/canal/TNT";;
mgm) URL="${URL}/canal/MGM";;
canal_brasil) URL="${URL}/canal/CBR";;
cinemax_e) URL="${URL}/canal/MXE";;
trutv) URL="${URL}/canal/TRU";;
trutv_hd) URL="${URL}/canal/TRH";;
doc|documentario) URL="${URL}/categoria/Documentarios";flag=1;;
variedades) URL="${URL}/categoria/Variedades";flag=1;;
infantil) URL="${URL}/categoria/Infantil";flag=1;;
esporte|esportes|futebol) URL="${URL}/categoria/Esportes";flag=1;;
series|seriados) URL="${URL}/categoria/Series";flag=1;;
filmes) URL="${URL}/categoria/Filmes";flag=1;;
cod) URL="${URL}/programa/$2";flag=2;;
todos|agora|*) URL="${URL}/categoria/Todos";flag=1;;
esac

case "$2" in
semana|s)
$ZZWWWHTML "$URL" | sed -n '/<li class/,+1p'|sed '/^[[:space:]]*$/d;/.*<\/*li/s/<[^>]*>//g'|
sed 's/^.*programa\///g;s/".*title="/_/g;s/">//g;s/<span .*//g;s/<[^>]*>/ /g;s/amp;//g'|
sed 's/^[[:space:]]*/ /g'|sed '/^[[:space:]]*$/d'|
sed "s/^ \([STQD].*[0-9][0-9]\/[0-9][0-9]\)/\n\1/g"|
sed 's/^ \(.*\)_\(.*\)\([0-9][0-9]h[0-9][0-9]\)/ \3 \2 Cod:\1/g'
;;
*)
if [ $flag -eq 0 ]
then
$ZZWWWHTML "$URL" | sed -n '/<li class/,+1p'|sed '/^[[:space:]]*$/d;/.*<\/*li/s/<[^>]*>//g'|
sed 's/^.*programa\///g;s/".*title="/_/g;s/">//g;s/<span .*//g;s/<[^>]*>/ /g;s/amp;//g'|
sed 's/^[[:space:]]*/ /g'|sed '/^[[:space:]]*$/d'|
sed -n "/, $DATA/,/^ [STQD].*[0-9][0-9]\/[0-9][0-9]/p"|sed '$d'|
sed '1s/^ *//;2,$s/^ \(.*\)_\(.*\)\([0-9][0-9]h[0-9][0-9]\)/ \3 \2 Cod:\1/g'
elif [ $flag -eq 1 ]
then
$ZZWWWHTML "$URL" | sed -n '/<li style/,+1p'|sed '/^[[:space:]]*$/d;/.*<\/*li/s/<[^>]*>//g'|
sed 's/^.*programa\///g;s/".*title="/_/g;s/">.*<br \/>//g;s/<[^>]*>/ /g;s/amp;//g'|
sed 's/^[[:space:]]*/ /g'|sed '/^[[:space:]]*$/d'|
sed 's/^ \(.*\)_\(.*\)\([0-9][0-9]h[0-9][0-9]\)/ \3 \2 Cod:\1/g'
else
$ZZWWWHTML "$URL" | sed -n '/<span class="tit">/,/a seguir neste canal/p'|
sed 's/<span class="tit">/Título:/;s/<span class="tit_orig">/Título Original:/'|
sed 's/<[^>]*>/ /g;s/amp;//g;s/\&ccedil;/ç/g;s/\&atilde;/ã/g;s/.*str="//;s/";//;s/[\|] //g'|
sed 's/^[[:space:]]*/ /g'|sed '/^[[:space:]]*$/d;/document.write/d;$d'
fi
;;
esac
}

Change log

r710 by aureliojargas on Mar 29, 2012   Diff
SEGURANÇA: $1 colocado entre aspas na
chamada padrão zzzz -h de todas as
funções.
Go to: 
Sign in to write a code review

Older revisions

r669 by aureliojargas on Mar 28, 2012   Diff
lint: removendo espaços inúteis. Parte
2.
r655 by aureliojargas on Mar 23, 2012   Diff
s/Aurélio/Aurelio/ *
r613 by itamarnet on Sep 4, 2011   Diff
zztv: Incluido a exibição de código na
listagem da programação semanal para
os canais (alteração esquecida na
revisão anterior).
All revisions of this file

File info

Size: 5829 bytes, 123 lines
Powered by Google Project Hosting