Pagina inicial » como » Construa um Agendador de Download com pouca habilidade de programação

    Construa um Agendador de Download com pouca habilidade de programação

    Todos nós gostamos de baixar coisas da internet, e há muitas ferramentas de gerenciamento de downloads que podemos usar para agendar nossos downloads. Pode ser mais fácil usar um gerenciador de downloads, mas não há problema em explorar as ferramentas que já vêm com o Ubuntu e fazer uso total dele.

    Neste artigo vamos mostrar-lhe um software embutido no Ubuntu que podemos usar para baixar coisas da Internet usando wget. Além disso, mostraremos como agendar o download usando Cron.

    Download usando o Wget

    O Wget é um pacote de software gratuito para recuperar arquivos usando HTTP, HTTPS e FTP, os protocolos de Internet mais utilizados. É uma ferramenta de linha de comando não interativa, por isso pode ser facilmente chamada de scripts, tarefas agendadas, terminais sem suporte ao X-Windows, etc..

    Abra o seu terminal e vamos explorar como podemos usar o wget para baixar coisas da rede. A sintaxe básica do download com o wget é a seguinte:

    wget [opção]… [URL]…

    Este comando irá baixar o manual do wget na sua unidade local

    wget http://www.gnu.org/software/wget/manual/wget.pdf

    Linux Cron

    O Ubuntu vem com um daemon de cron usado para agendar tarefas a serem executadas em um determinado momento. O Crontab permite que você especifique ações e horários em que elas devem ser executadas. É assim que você normalmente agendaria uma tarefa usando a ferramenta de linha de comando.

    Abra uma janela de terminal e insira crontab -e.

    Cada uma das seções em um crontab é separada por um espaço, com a seção final tendo um ou mais espaços. Uma entrada cron consiste em minutos (0-59), hora (0-23, 0 = meia-noite), dia (1-31), mês (1-12), dia da semana (0-6, 0 = domingo), comando. A terceira entrada no download do crontab acima é wget.pdf às 2 da manhã. A primeira entrada (0) e a segunda entrada (2) significam 2:00. A terceira à quinta entrada (*) significa qualquer hora do dia, mês ou semana. A última entrada é o comando wget para baixar o wget.pdf da URL especificada.

    Esse é o básico no wget e como o Cron funciona. Vamos dar uma olhada em um exemplo da vida real sobre como agendar um download.

    Download de agendamento

    Vamos fazer o download do Firefox 3.6 às 2 da manhã. Como nosso ISP fornece apenas uma quantidade limitada de dados, precisamos parar o download às 8 da manhã. Isto é o que a configuração parece.

    Ignore as duas primeiras entradas no crontab acima. O terceiro e quarto comando são os únicos 2 comandos que você precisa. O terceiro comando configura uma tarefa que baixará o Firefox às 2 horas da manhã:

    [código]
    0 2 * * * wget -c http://download.mozilla.org/?product=firefox-3.6.6&os=win&lang=pt-BR
    [/código]

    As opções -c indicam que o wget deve retomar o download existente se ele não tiver sido concluído.

    O quarto comando irá parar às 8 horas. 'Killall' é um comando unix que mata processos pelo nome.

    [código]
    0 8 * * * killget wget
    [/código]

    O killget wget diz ao Ubuntu para parar de baixar o arquivo às 8 da manhã..

    Outros comandos úteis do wget

    1. Especificando o diretório para baixar um arquivo

    [código]
    wget -output-document = / home / zainul / Downloads / wget manual.pdf http://www.gnu.org/software/wget/manual/wget.pdf
    [/código]

    a opção -output-document permite especificar o diretório e o nome do arquivo que você baixou

    2. Baixando um site

    O wget também é capaz de baixar um site.

    [código]
    wget -m http://www.google.com/profiles/zainul.franciscus
    [/código]

    O comando acima irá baixar toda a minha página do perfil do google. A opção '-m' diz ao wget para baixar uma imagem 'espelho' do URL especificado.

    Outra opção importante é dizer ao wget quantos links ele deve seguir quando baixar um site..

    [código]
    wget -r -l1 http://www.google.com/profiles/zainul.franciscus
    [/código]

    O comando wget acima usa duas opções. A primeira opção '-r' diz ao wget para baixar o site especificado recursivamente. A segunda opção '-l1' diz ao wget para obter apenas o primeiro nível de links daquele website especificado. Podemos configurar até três níveis '-l2' e '-l3'.

    3. Ignorando a entrada do robô

    O mestre da Web mantém um arquivo de texto chamado Robot.txt. 'Robot.txt' mantém uma lista de URL que um rastreador de página da Web, como o wget, não deve rastrear. Podemos dizer ao wget para ignorar o 'Robot.txt' com a opção '-erobots = off'. O comando a seguir informa ao wget para baixar a primeira página do meu perfil do google e ignorar o 'Robot.txt.

    [código]
    wget -erobots = desativado http://www.google.com/profiles/zainul.franciscus
    [/código]

    Outra opção útil é -U. Esta opção irá mascarar o wget como um navegador. Observe que mascarar um aplicativo como outro aplicativo pode violar o prazo e o serviço de um provedor de serviços da Web..

    [código]
    wget -erobots = off -U Mozilla http://www.google.com/profiles/zainul.franciscus
    [/código]

    Conclusão

    Wget é um pacote de software GNU hackable muito antigo que podemos usar para baixar arquivos. O Wget é uma ferramenta de linha de comando interativa, o que significa que podemos deixá-lo rodar em nosso computador em segundo plano, sem precisar iniciar nenhum aplicativo. Confira a página do manual do wget

    [código]
    $ man wget
    [/código]

    para entender outras opções que podemos usar com o wget.

    Links

    Manual do Wget
    Como combinar dois arquivos baixados quando o wget falha no meio
    Linux QuickTip: Baixando e desmarcando em uma etapa