Nos meus momentos de lazer, gosto de me dedicar à programação e ao estudo de novas tecnologias. Adoro mergulhar em linhas de código, desvendar suas funcionalidades e encontrar maneiras de aprimorar e personalizar soluções. Mas minha vida não se resume apenas a isso. Também gosto de ler, assistir séries e navegar um pouco nas redes sociais para me desconectar e relaxar.
Programação e engenharia reversa são duas atividades que eu executo no dia-a-dia e que me fascinam de montão. Graças a ambas – e a uma boa dose de curiosidade, um verdadeiro dom nato meu – é que me tornei um programador e há mais de 35 anos trabalho nessa área, hoje numa grande empresa como Analista de Automação. A paíxão é tanta que são atividades que eu pratico mesmo fora do trabalho, nos momentos de plazer ou desenvolvendo projetos pessoais.
Adoro – de verdade – mergulhar em linhas de código, desvendar suas funcionalidades e encontrar maneiras de aprimorar e personalizar soluções. Gosto tanto que o que vou compartilhar aqui foi descoberto num sabado, aperfeiçoado e compartilhado aqui num domingo (28-Julho-2025). Mas não pense que minha vida não se resume apenas a isso, ok? Também gosto de ler, assistir séries e navegar um pouco nas redes sociais para me desconectar e relaxar.
A Saga da Organização dos Shows de Comédia
Enquanto procurava por shows de comédia, percebi que a tarefa de encontrar eventos próximos e decidir qual assistir não era fácil. Nos sites de venda de ingressos, as informações estavam todas “juntas e misturadas”, sem uma ordem clara. Os shows não estavam organizados por data, tampouco em ordem alfabética, e a mistura de eventos de diferentes cidades como São Paulo, Curitiba e Rio Grande do Sul só aumentava a confusão.
Resolvi aproveitar a oportunidade para conhecer melhor o Power Automate Desktop (PAD) e utilizá-lo para extrair as informações do site. Segui fielmente as instruções do vídeo “Web Scraping Made EASY With Power Automate Desktop – For FREE & ZERO Coding” da YouTuber Leila Gharani (apesar do nome o vídeo está em inglês). No entanto, embora o resultado final fosse semelhante ao do vídeo, ainda não atendia minhas necessidades específicas, como obter o hyperlink para a página do evento.
Meu projeto caseiro evoluiu de uma simples busca por shows disponíveis para a criação de uma página que organizasse todos os shows encontrados em diversos sites de venda de ingressos. A ideia era apresentar os eventos em ordem de data e destacar os sites que oferecessem os menores preços para um determinado show. No entanto, eu não estava conseguindo alcançar esse objetivo utilizando o PAD e as instruções do vídeo da Leila.
Foi então que surgiu a ideia: e se eu pudesse ajustar manualmente os comandos extraídos da interface do PAD? Essa ousadia de alterar os comandos manualmente no Notepad++ levou ao resultado desejado, demonstrando o poder da engenharia reversa para superar as limitações da interface gráfica e personalizar a automação de acordo com minhas necessidades.
Copiar e Colar Comandos: Automatização Muito Além do "No Code"
O Power Automate Desktop (PAD) é uma ferramenta poderosa da Microsoft que permite a criação de fluxos de trabalho automatizados com uma abordagem “no code”, ou seja, sem a necessidade de escrever código. Essa ferramenta facilita a automação de tarefas repetitivas, economizando tempo e reduzindo erros humanos. No entanto, o verdadeiro potencial do PAD vai além do que a interface gráfica oferece, permitindo a personalização e programação direta dos comandos, tornando a automação ainda mais robusta e flexível.
Uma das funcionalidades interessantes do Power Automate Desktop é a capacidade de copiar e colar comandos de um fluxo para outro. Isso facilita a reutilização de partes do fluxo que funcionaram bem, economizando tempo e esforço na criação de novos fluxos. Por exemplo, se você criou um fluxo que extrai dados de uma página web, você pode copiar essa parte específica e colá-la em outro fluxo que precise da mesma funcionalidade.
Editando Comandos no Editor de Textos
Uma característica menos conhecida, mas extremamente poderosa, é a possibilidade de copiar os comandos da interface do PAD e colá-los em um editor de texto, como o Notepad++. Isso permite que você “programe” esses comandos manualmente, ajustando parâmetros e adicionando funcionalidades que podem não estar facilmente acessíveis pela interface gráfica.
Pois bem, depois de colar no Notepad++ tive o seguinte resultado:
Dai, depois passar algum tempo estudando essa mossoroca de palavras e cortand o nos locais que em achava mais pertinente tive o seguinte resultdo:
No exemplo acima, a linha [$”’div > a”’, $”’Href”’, $”””, $”’Value #5”’] foi incluída manualmente, pois a informação não estava sendo capturada pelo gravador de passos. sendo:
[
$”’div > a”’, <- o seletor do objeto
$”’Href”’, <- o que se deseja extrair que pode ser: Own Text, Source Link e Href
$”””,<- ainda não descobri para que serve, mas deixá-lo em branco parece ser o ideal
$”’Value #5” <- Coluna do Data Table na qual a informação, o hyperlink para a página, será armazenada
]
Ao ajustar manualmente esses comandos, é possível superar limitações da interface gráfica e obter uma automação mais precisa e eficiente.
Aumentando a Robustez da Ferramenta
Essa capacidade de editar comandos diretamente no código é um exemplo perfeito de como o “no code” pode se transformar em “low code” ou até “full code” quando necessário, aumentando a flexibilidade e a robustez das soluções de automação. Essa abordagem híbrida permite que os usuários tirem proveito da facilidade de uso da interface gráfica, ao mesmo tempo em que aproveitam o poder e a precisão da programação direta.
Ainda não encontrei nenhum site que fala sobre esses comandos, nem na própria Microsoft, então há todo um universo a ser explorado. Você tem alguma dica? Compartilhe com a gente.
Não há como descrever o enorme prazer que senti ao perceber que, a partir dessa análise, consegui implementar funcionalidades que antes me pareceram impossíveis (tentei várias vezes). Ainda estou estudando o que cada um dos parâmetros faz, mas pelo menos já consegui as informações que precisava para tocar o meu projeto pessoal. Assim que tiver mais novidades.
Ah, muito importante, depois, para colar o passo novamente na interface do Power Automate Desktop é necessário remover as quebras de linha, ok?
#automação #robôs #inteligênciaartificial #Microsoft #powerplatform #powerautomate #powerautomatedesktop #programação #curiosidade #engenhariareversa
Sensacional Regis! Parabéns pela descoberta e pelo projeto!
Valeu Marcio, obrigado pela força! Grande abraço!