Get Palavra Amiga

Publicado por M4iir1c10 (última atualização em 06/06/2017)

[ Hits: 9.009 ]

Homepage: https://github.com/mauricioph

Download getplamiga2

Download 1396823267.getplamiga2 (versão 2)

Download plam.sh (versão 3)

Download 1495407508.plam.sh (versão 4)




Script shell para baixar o podcast do Bispo Macedo da Igreja Universal do Reino de Deus. Inspirado pelo script de Valter Ferraz Sanches ( http://www.vivaolinux.com.br/~vfs ).

Mesmo que você não seja membro de igreja alguma ou tenha religião, vale a pena ouvir os ensinamentos diários deste homem de Deus, sem preconceitos ou críticas.

Caso você não concorde com meu ponto de vista a respeito dele e suas mensagens, mas quer fazer o download para usar em outros fins, fique a vontade.

Viva o Linux, o software livre, a liberdade de crença, de livre opinião, de nacionalidade, de etnia etc.

Dependências do script são: Zenity (a maioria das distro com o Gnome tem), curl e wget (todas as distros que eu conheço têm).

  



Versões atualizadas deste script

Versão 2 - Enviado por M4iir1c10 em 06/04/2014

Changelog: Essa nova versão corrige o link do RSS e reduz alguns comandos.

#!/bin/bash
# script para download automatizado da palavra amiga do Bp. Macedo
# Esse script foi inspirado pelo script do Obr. Valter Ferraz Sanches http://www.vivaolinux.com.br/perfil/verPerfil.php?login=vfs
# http://googbar.blogspot.com/
# http://www.vivaolinux.com.br/script/GETPLAMIGA-Baixe-a-Palavra-Amiga-do-Bispo-Macedo
#
# Criado por Mauricio Luis de Medeiros http://www.vivaolinux.com.br/perfil/verPerfil.php?login=m4iir1c10
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
###############################################################################
# baixa a lista de audio no servidor
curl http://www.universal.org/servicos/podcast/rss/palavraamiga.xml > /tmp/amiga.xml
# separa somente os links das tags de xml
cat /tmp/amiga.xml | sed 's/http/\nhttp/g' | sed -e 's/mp3/mp3\n/'g | grep mp3 | grep http > /tmp/links
# pede ao usuario para selecionar uma pasta para salvar os arquivos
pasta=$(zenity --file-selection --directory --title "selecione a pasta para salvar as mensagens")
# calcular quantidade de audio a ser baixado
tot=$(cat /tmp/links | wc -l)
# separa o nome dos titulos da mensagens
cat /tmp/amiga.xml | sed '/summary/!d' | sed -e 's///g' | sed 's/ /_/g' | sed 's/__//g' | sed 's/\://g' | sed 's/itunes//g' > /tmp/nomes
# prepara a variavel "a" para entrar em um loop de downloads guiado direto ao arquivo certo no servidor
a=$tot
# entrando no loop
while [ "$a" != "0" ]
do clear
echo "$(basename $(sed -n ${a}p /tmp/links)) Esta sendo baixado agora"
let b=$(($a + 1))
nome=$(sed -n ${b}p /tmp/nomes)
# condicao Se o arquivo "fulano" ja existe nao faz o download e passa para o proximo da lista
if [ -f "$pasta/$nome.mp3" ]
then echo "ja tenho"
let a=$(($a - 1))
# se o arquivo "fulano" nao existe Baixa ele
else wget $(sed -n ${a}p /tmp/links) -O "$pasta/$nome.mp3"
let a=$(($a - 1))
fi
done
# quando terminar de fazer todos os downloads informa o usuario e deleta os arquivos temporarios
zenity --info --text "Todos os audios foram baixados, sem updates por hoje."
rm /tmp/amiga.xml
rm /tmp/links
rm /tmp/nomes

Download 1396823267.getplamiga2


Versão 3 - Enviado por M4iir1c10 em 23/02/2015

Changelog: Changelog: Essa nova versão reduz alguns comandos e corrige outros que devido a mudança de formato do rss teve que ser modificado aqui também.

Download plam.sh


Versão 4 - Enviado por M4iir1c10 em 21/05/2017

Changelog: -Novo Link
-Novo comando para curl e cut de acordo com o novo xml baixado do soundcloud.

Download 1495407508.plam.sh


Esconder código-fonte

#!/bin/bash
# script para download automatizado da palavra amiga do Bp. Macedo
# Esse script foi inspirado pelo script do Obr. Valter Ferraz Sanches http://www.vivaolinux.com.br/perfil/verPerfil.php?login=vfs
# http://googbar.blogspot.com/
# http://www.vivaolinux.com.br/script/GETPLAMIGA-Baixe-a-Palavra-Amiga-do-Bispo-Macedo
# Dependencias desse script sao:
# Linux ;) 
# Zenity, wget e curl
#
# Criado por Mauricio Luis de Medeiros http://www.vivaolinux.com.br/perfil/verPerfil.php?login=m4iir1c10
#
#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
###############################################################################
# baixa a lista de audio no servidor
curl http://podcast.arcauniversal.com.br/pamiga.xml > /tmp/amiga.xml
# separa somente os links das tags de xml
cat /tmp/amiga.xml| sed '/enclosure/!d' |  sed -e 's/url\="/\n/g' | sed -e 's/mp3/mp3\n/g' | sed '/^http/!d' > /tmp/links
# pede ao usuario para selecionar uma pasta para salvar os arquivos
pasta=$(zenity --file-selection --directory --title "selecione a pasta para salvar as mensagens")
# calcular quantidade de audio a ser baixado
tot=$(cat /tmp/links | wc -l)
# separa o nome dos titulos da mensagens
cat /tmp/amiga.xml | sed '/description/!d' | sed -e 's/<//g' | sed -e 's/\///g' | sed -e 's/description//g' | sed -e 's/>//g' | sed 's/ /_/g' | sed 's/__//g' > /tmp/nomes
# prepara a variavel "a" para entrar em um loop de downloads guiado direto ao arquivo certo no servidor
a=$tot
# entrando no loop
while [ "$a" != "0" ]
do clear
echo "$(basename $(sed -n ${a}p /tmp/links)) Esta sendo baixado agora"
let b=$(($a + 1))
nome=$(sed -n ${b}p /tmp/nomes)
# condicao Se o arquivo "fulano" ja existe nao faz o download e passa para o proximo da lista
if [ -f "$pasta/$nome.mp3" ]
then echo "ja tenho"
let a=$(($a - 1))
# se o arquivo "fulano" nao existe Baixa ele
else wget $(sed -n ${a}p /tmp/links) -O "$pasta/$nome.mp3"
let a=$(($a - 1))
fi
done
# quando terminar de fazer todos os downloads informa o usuario e deleta os arquivos temporarios
zenity --info --text "Todos os audios foram baixados, sem updates por hoje."
rm /tmp/amiga.xml
rm /tmp/links
rm /tmp/nomes

Scripts recomendados

Time-Shifting Wallpaper (GNOME)

Instalação do Asterisk no Debian Etch

Selecionar wallpaper no Fluxbox (baseado no Xdialog)

Backup com rsync em maquina da rede.

Script Backup ultimo arquivo criado em um diretorio feito TAR direto para DAT


  

Comentários
[1] Comentário enviado por m4iir1c10 em 08/11/2009 - 06:27h

So passando para fazer um update nesse script, as operacoes que esse script faz sao:
# baixa a lista de audio no servidor
# pede ao usuario para selecionar uma pasta para salvar os arquivos
# separa os titulos da mensagens, e renomeia de acordo com o titulo
# So baixa o audio que nao existe naquela pasta, se vc ja fez o download anteriormente de uma mensagem essa mensagem sera pulada, passando para a proxima da fila.
# quando terminar de fazer todos os downloads informa o usuario e deleta os arquivos temporarios

Meu acrescimo aqui e o seguinte, quando o script renomeia o audio, perdemos o controle das datas de cada mensagem, pensando nisso o proximo seguimento do codigo vai criar um arquivo chamado indice.txt com a data e o titulo de cada mensagem, para vc ter mais controle de cada mensagem por data.

No final do codigo substitua os comandos:
rm /tmp/amiga.xml
rm /tmp/links
rm /tmp/nomes

Por :

cat /tmp/amiga.xml | grep description | sed -e 's/description//g' | sed -e 's/<>//g' | sed -e 's/<\/>//g' > /tmp/tito
cat /tmp/amiga.xml | grep title | awk '{print $6}' | sed -e 's/<\/title>//g' > /tmp/dia
$nume=$(cat /tmp/tito | wc -l)
while [ "$nume" != "0" ]
do echo "$(sed -n ${nume}p /tmp/dia) $(sed -n ${nume}p /tmp/tito)" >> /tmp/final
let nume=$(($nume - 1))
done
mv /tmp/final $pasta/indice.txt
rm /tmp/amiga.xml
rm /tmp/links
rm /tmp/nomes
rm /tmp/tito
rm /tmp/dia

Pronto!

[2] Comentário enviado por darly em 14/11/2009 - 11:02h

Ola Mauricio,
Muito bacana esse script, achei na hora certa pq estava procurando algo assim para ouvir a palavra do Bispo que não esta mais disponível no site. Aqui na minha cidade estamos sem a rádio, então pra ouvir só pela net mesmo.
Mas só tenho uma dúvida, como sou iniciante em Linux então algumas coisas ainda nao entendo, gostaria de saber se esse script permite a seleçao para baixar de um determindado mês ou o dia?? Parabenizo também ao Valter que criou o script orginal.
Obrigada


[3] Comentário enviado por removido em 22/01/2010 - 10:21h

isso ae, vamo arrebentar tbem no mundo linux

[4] Comentário enviado por removido em 04/03/2015 - 21:33h

Se eu trocar a url da pra ouvir piada ou radio?

A liberdade indocil e domada pela propria desgraça -William Shakespeare


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts