Como baixar automaticamente capas diárias do Newseum

BRA_FDSP(2)Pesquisadores do Jornalismo podem precisar baixar diariamente capas de jornais do site Newseum. Neste artigo, mostro como automatizar esta tarefa.

Isto pode ser feito com scripts definidos para execução diária automática. Nos exemplos abaixo, uso a capa do jornal Folha de São Paulo, que leva sempre o nome de BRA_FDSP.

Primeiro, baixe o clássico programa WGET, usado para download de arquivos pela internet. Há versões para Windows e diversos tipos de Unix. Nos Linux, normalmente está instalado, mas, se não estiver, pode ser encontrado nos repositórios.

Windows

No ambiente Windows, coloque o WGET numa pasta específica para guardar os arquivos baixados, juntamente com o seguinte script, quando a data está no formato DD/MM/AAAA:

set day=%DATE:~0,2%
if "%DATE:~0,1%" == "0" set day=%DATE:~1,1%
set data=%DATE:~0,4%"-"%DATE:~5,2%"-"%DATE:~8,2%
wget -c http://webmedia.newseum.org/newseum-multimedia/dfp/pdf%DAY%/BRA_FDSP.pdf -O BRA_FDSP_%DATA%.pdf

Quando a data está no formato AAAA-MM-DD, como eu uso, o script é este:

set day=%DATE:~8,2%
if "%date:~8,1%" == "0" set day=%date:~9,1%
set data=%DATE:~0,4%"-"%DATE:~5,2%"-"%DATE:~8,2%
wget -c http://webmedia.newseum.org/newseum-multimedia/dfp/pdf%DAY%/BRA_FDSP.pdf -O BRA_FDSP_%DATA%.pdf

Salve o arquivo texto como BAT e coloque-o no agendamento de tarefas para ser executado diariamente às 18h, quando as capas do dia já estarão com certeza disponíveis.

Isto buscará a capa PDF do dia, que tem sempre o mesmo nome, e gravará com a data (como BRA_FDSP-2013-12-09.pdf, por exemplo) para correta identificação. O script usa a sintaxe do shell Windows para pegar os dois dígitos do dia. Se o dia for menor que 10, terá um zero na frente. Então, o script pegará apenas o segundo dígito, pois a pasta remota do Newseum não usa o zero. Com DAY e DATE na linha de comando, o WGET procura sempre na pasta correta do dia e grava o arquivo com a data completa.

Linux

O shell script em Linux é este:

#!/bin/bash

_day=$(date +"%-d")
_today=$(date +"%Y-%m-%d")
wget -c http://webmedia.newseum.org/newseum-multimedia/dfp/pdf$_day/BRA_FDSP.pdf -O ~/newseum/BRA_FDSP_$_today.pdf

Em Linux, o arquivo deverá ser definido como executável e o caminho para a pasta de download deve ser explícito, pois o script colocado no cron (o agendador de tarefas Unix) roda no diretório raiz do usuário.

Sobre José Antonio Meira da Rocha

Jornalista, professor de Planejamento Gráfico e Mídias Digitais da Universidade Federal de Santa Maria, campus da cidade de Frederico Westphalen, Rio Grande do Sul, Brasil. Doutorando em Design na UFRGS, Porto Alegre, Brasil, 2014.