- Inscrever-se no RSS Feed
- Marcar como novo
- Marcar como lido
- Marcar como favorito
- Inscrever-se
- Versão para impressão
- Notificar o moderador
- Inscrever-se no RSS Feed
- Marcar como novo
- Marcar como lido
- Marcar como favorito
- Inscrever-se
- Versão para impressão
- Notificar o moderador
Todos nós tivemos a necessidade de baixar os dados de um site, o principal problema que enfrentamos é que é um processo manual, temos que entrar no site, encontrar o arquivo correto e baixá-lo e depois prepará-lo no Excel.
Seria ótimo se pudéssemos automatizar o processo e até preparar os dados com um clique, não acham?
Não só seria, é excelente e podemos fazer isso facilmente usando o Alteryx.
Neste artigo irei mostrar os passos para configurá-lo e também compartilhar o fluxo finalizado para que você possa segui-lo passo a passo ou modificá-lo para usá-lo com seus dados.
Este é o processo completo, vou descrevê-lo passo a passo para torná-lo mais claro.
Localização de arquivo
Primeiro você deve localizar onde o arquivo que deseja baixar está localizado.
Para este exemplo, será um arquivo com casos confirmados de coronavírus do site github.com
Como você pode ver no link acima, é um arquivo separado por vírgulas e contém semanalmente as informações de casos COVID19 verificados por país.
Se quiséssemos ter esses dados para atualizar nossos relatórios, teríamos que entrar no site, encontrar o arquivo e baixá-lo manualmente, em seguida, alterar o formato ou intervalo no Excel para poder criar um novo relatório que inclui uma nova semana ; Este processo é trabalhoso e demorado e está sujeito a erros.
Para começar, baixamos o arquivo no formato CSV para usá-lo como um modelo no fluxo de trabalho que será criado posteriormente.
Com o Alteryx, podemos usar a poderosa e simples ferramenta Download para fazer isso automaticamente.
Download do arquivo
Começaremos com o arquivo que queremos baixar, para este exemplo será um arquivo com casos confirmados de coronavírus do site github.com
A sua configuração é muito simples e requer mais dois elementos para funcionar de forma otimizada e de fácil manutenção.
Primeiro, exigimos uma entrada de texto onde colocaremos o endereço da página à qual queremos nos conectar e o nome do arquivo que queremos baixar.
Um campo é adicionado para o URL e outro para o nome do arquivo.
No download.
As configurações são selecionadas como na tela.
Em URL, o campo URL da entrada de texto que colocamos é selecionado.
Na saída, um campo é selecionado, como String.
Na guia de cabeçalhos.
O nome do arquivo é selecionado e isso é tudo que você precisa configurar para fazer o download automático.
A saída do download são os cabeçalhos HTML, se funcionar deve indicar um código 200, OK:
Se der qualquer código diferente da faixa de 200 é um erro, os erros são padrão e é devido a uma variedade de condições, para consultá-los eles podem entrar aqui:
https://www.restapitutorial.com/httpstatuscodes.html
Os dados estarão no campo DownloadData, em um único registro.
Como vemos na mensagem, o campo possui novas linhas incorporadas e caracteres truncados. Para preparar isso, usaremos um bloco de Texto em Colunas.
Selecionamos o campo DownloadData que possui o conteúdo que procuramos, pois possui novas linhas usamos o delimitador \ n com o qual dividiremos o conteúdo cada vez que houver uma nova linha.
A última opção a selecionar é dividir em linhas, desta forma podemos garantir que independentemente da quantidade de registros que você possui, sem especificá-los, esta opção os dividirá, independentemente de variarem a cada vez.
Finalmente, usamos um selecionar para ocultar as colunas que não usaremos mais tarde.
Ao marcar a caixa de seleção à esquerda dos campos, vamos descartar colunas que não serão úteis no processo.
Contêiner
Como pode ser visto no fluxo, cada processo é agrupado dentro de um contêiner, que atende a várias funções.
A primeira é classificar os itens do fluxo e separá-los para facilitar a manutenção e a documentação.
A segunda é que podemos desativar os processos que estão dentro para tornar a execução mais rápida ou se for uma parte do processo que não é necessário rodar sempre.
A terceira é que podemos simplificar o fluxo ocultando os processos que você possui ao clicar na guia à direita. Nesta opção, os blocos analíticos que estão dentro do container continuarão sendo executados.
Preparação de dados
Pegado do giphy.com
A próxima etapa, uma vez que temos os dados no Alteryx, será dar a eles um formato que possamos usar para analisar, já que ele faz o download como uma página da web com tags html que não serão úteis para nós. Para isso separaremos o conteúdo em 2, de um lado, os cabeçalhos e de outro os registros que posteriormente uniremos para ter o arquivo pronto.
Conteúdo baixado com tags HTML
Prepare os cabeçalhos
A primeira etapa é adicionar um filtro para ter todos os cabeçalhos das colunas.
A condição a ser avaliada será se ele contém Province/State que é o campo para indicar que é o título de cada categoria.
Adicionamos expressões regulares para limpar os caracteres de que não precisamos.
A coluna a ser analisada é selecionada.
A expressão regular que fará a limpeza é colocada.
<\ s * [^>] *>
Sem entrar em grandes detalhes, o que ele faz é substituir tudo entre <> e entre [], com isso removemos as tags html e temos apenas os dados que estamos procurando.
Se você quiser aprender mais sobre expressões regulares e como usá-las, recomendo este curso interativo e muito simples que encontrei.
Na Saída, o método que neste caso é substituir é selecionado para alterar esse texto e colocar um espaço.
Antes da regex:
Após a regex:
Usamos a limpeza de dados para remover os espaços em branco no início e no final do campo.
Como os campos estão em uma coluna e para nosso formato exigimos que sejam títulos de colunas, temos que fazer um pivô ou girá-los, função semelhante ao que se faz no Excel com uma tabela dinâmica.
Para fazer isso, a primeira etapa é adicionar uma ID automática.
Esse processo adiciona um campo de numeração automática incremental que nos permitirá girar o conteúdo, mesmo se novas colunas forem adicionadas automaticamente.
Este bloco não precisa de configuração.
A tabulação cruzada é a próxima etapa.
Para poder girar os dados, altere-os de colunas para linhas. Desta forma, faremos os títulos das colunas da maneira correta.
Pegado do giphy.com
Se seleciona o campo que permanecerá como cabeçalho, RecordID, que criamos na etapa anterior, é selecionado; os valores das colunas são os de DownloadData.
Quando é girado, tem a seguinte aparência:
Já temos os títulos das colunas prontos.
Agora você deve preparar o conteúdo dos registros.
Gravar conteúdo
Filtramos os campos que possuem a tag <td>.
Em seguida, aplicamos as mesmas três etapas do processo que usamos para os cabeçalhos.
Com o regex, removemos as tags html, limpamos os espaços em branco extras e adicionamos um id aos registros para uni-los novamente mais tarde.
Certifique-se de que o fluxo funcione quando novas colunas diárias forem adicionadas
Para isso, utilizaremos um resumo que obterá o último registro cada vez que for executado. Como nesta etapa as informações ainda estão em linhas, ao contar as linhas nos dará o número de colunas que o arquivo terá.
Selecionamos o RecordID e a opção Último para nos dar o registro final e desta forma não importa se os registros aumentam ou diminuem, sempre teremos o número total dinamicamente.
Para utilizar esse registro, adicionaremos um append para uni-lo com o conteúdo dos registros e poder calcular um ID para transpor os dados e que o conteúdo de cada registro seja dividido corretamente.
A única opção a ser selecionada é Permitir que todas as operações de acréscimo replicem o valor em cada um dos registros.
Com o valor do último registro.
Utilizamos uma fórmula para poder dividir o total de registros pelo número de cabeçalhos que o arquivo possui, de forma a separar o conteúdo de cada registro.
Para isso, usamos uma fórmula.
Selecionamos a coluna que queremos calcular, é uma já existente.
Digitamos a divisão dos registros pelo total de cabeçalhos com o operador teto que se comporta da mesma forma que a função de arredondamento do Excel.
O resultado desta fórmula será que cada linha terá o mesmo número de identificação para que, ao girá-las, elas se fixem no lugar correto.
Se você deseja conhecer todas as funções disponíveis na fórmula e na descrição, pode consultar o seguinte artigo:
https://help.alteryx.com/current/designer/math-functions
O próximo ponto necessário para acomodar os dados é adicionar uma fórmula de várias linhas que criará um ID para cada grupo de registros que acabamos de fazer com a fórmula.
Vamos criar um novo campo; Selecionamos um agrupamento porque o número começará a cada vez que eu atingir o número de colunas que o arquivo possui, neste caso 333. Ao final é colocada a expressão que irá criar o id, neste caso é [Linha-1: Novo campo] + 1, irá adicionar um ao campo imediatamente anterior que é zero e irá zerá-lo toda vez que eu atingir o final do valor do campo que selecionamos no agrupamento.
Agora vamos girar os dados de maneira semelhante à que fizemos com os títulos usando uma crosstab.
A única diferença neste caso será que iremos selecionar um campo para agrupar os valores, isto porque temos várias linhas que se repetem e desta forma serão colocadas corretamente no resultado.
Agrupamos por recordID para que ele distribua os dados em cada registro de acordo.
Os cabeçalhos serão o conteúdo do novo campo e os valores de cada coluna o conteúdo dos dados de download.
Dessa forma, passamos de ter os dados em linhas para colunas.
A próxima etapa é ocultar o id que não será mais útil posteriormente.
Para isso, usaremos um bloco de seleção.
Agora que preparamos os cabeçalhos e o conteúdo do arquivo, devemos unir os dois para ter as informações completas.
Para isso, usaremos um bloco de junção.
Selecionamos a opção Configurar automaticamente por posição para que empilhe o conteúdo de cada coluna de acordo com a ordem em que aparece no arquivo.
O resultado da união é o seguinte:
O conteúdo já faz sentido e está em um formato que podemos usar.
A única coisa que resta a fazer é renomear cada coluna que agora tem números consecutivos enquanto o nome aparece como o primeiro registro.
Para fazer isso, você deve trabalhar com uma mudança de nome dinâmica, que pode ser encontrada na aba do desenvolvedor.
Com este bloco é possível alterar o nome das colunas, com a opção de Tirar nome dos campos da primeira linha de dados.
O que deixará o arquivo no formato correto.
Foi assim que baixamos e preparamos o arquivo que estava no formato de página da web (HTML) com o Alteryx.
Qual é a vantagem de fazer isso com o Alteryx?
- Pode ser automatizado
- É criado uma vez e pode ser executado diariamente para ter as informações atualizadas dia a dia sem modificar o fluxo original
Espero que este artigo seja útil para você, se você tiver alguma dúvida sobre o processo, pode perguntar nos comentários.
Pegado do giphy.com
Você deve ser um usuário registrado para adicionar um comentário aqui. Se você já estiver registrado, faça logon. Se você ainda não estiver registrado, registre-se e faça logon.