Imprimindo várias páginas do Cifra Club automaticamente

Publicado por Iago Lira (última atualização em 17/08/2015)

[ Hits: 6.567 ]

Homepage: https://notabug.org/iagolira/

Download baixar-cifras.sh




Olá pessoal!

Eu estava precisando imprimir algumas cifras do Cifra Club, mas é muito chato ter que imprimir todas de uma vez. Então criei um script que fizesse esta função (grosso modo). O script é simples, mas capturou o que queria!

Lembrando que vocês devem criar uma lista das músicas.

Exemplo:

    Porque Ele Vive
    Em Espirito, Em Verdade
    Alvo Mais que a Neve
    Grandioso És Tu
    Renova-me Senhor Jesus
    Solta o Cabo da Nau
    Eu Navegarei
    Foi Na Cruz
    Rude Cruz
    Mensagem da Cruz
    124 - Adoração
    15 Conversão
    291 - a Mensagem da Cruz
    65 - Quem Ira?

Lembrando que o nome da lista deve ser: lista-cifras.txt. Como o endereço sendo do tipo: http://www.cifraclub.com.br/harpa-crista/

  



Esconder código-fonte

#!/bin/bash
#Autor: Francisco Iago Lira Passos
#Data: 05/08/2015

read -p "Digite o endereço do site:" site
read -p "Deseja criar uma nova pasta?" yn

if [[ "$yn" -eq "sim" || "$yn" -eq "SIM" ]]
then
read -p "Digite o nome da pasta:" pasta
mkdir "$pasta"
fi

while read x
do
linha="$x"
lista="$(echo "$x" | sed 'y/áÁàÀãÃâÂéÉêÊíÍóÓõÕôÔúÚçÇÜü/aAaAaAaAeEeEiIoOoOoOuUcCUu/' | sed 's/,//' | tr 'A-Z' 'a-z' | tr ' ' '-' | sed 's/---/-/' | sed 's/(//' | sed 's/)//' | sed 's/?//')"
wkhtmltopdf $site$lista $(echo $lista".pdf")
mv $(echo $lista".pdf") $(echo $pasta"/")
done < lista-cifras.txt

Scripts recomendados

Bloqueia IP

SED: Números por extenso

Conexão Modem speedtouch + Backtrack

VOL News

Extrair ID de jogos de PS1 e PS2


  

Comentários
[1] Comentário enviado por hugoeustaquio em 17/08/2015 - 19:12h

Obrigado pela sua contribuição. Algumas observações:
Se você baixa muito do cifraclub, vale a pena retirar a pergunta do site e a variável "site" também, e usar a URL "http://www.cifraclub.com.br/$ARTISTA/$MUSICA/imprimir.html" pra converter em pdf. Se você estiver planejando imprimir o pdf gerado, ele vai ficar bem mais limpo assim, economizando tinta da sua impressora.

Pode também usar a variável "$1" pra pegar o primeiro parâmetro recebido, e assim não 'obrigar' o usuário a usar uma lista com nome específico. Assim o usuário dispararia
$ nome_do_script lista.txt

E o script processaria o arquivo "lista.txt" sem obrigar o usuário a ter nomes específicos na sua lista pessoal.

É preferível usar parâmetros que perguntar um diretório, tipo "-d nome" serviria pra quando o usuário quer que os documentos sejam gerados num diretório específico.

Se o seu objetivo for imprimir direto na impressora mesmo, veja o comando 'lpr'. Ele insere o html (ou txt, pdf, etc...) na sua fila de impressão.

Abraço!

[2] Comentário enviado por Lwkas em 17/08/2015 - 22:17h


Dica boa. Parabéns!

[3] Comentário enviado por iagolira em 18/08/2015 - 08:57h

Obrigado pela dica! Vou melhorar este! Por enquanto é só um qurebra-galho! O ruim deste script é porque ele não processa as tablaturas e notas!
Nome: Francisco Iago Lira Passos
Curso: Bacharelado em Física


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts