0% acharam este documento útil (0 voto)
23 visualizações8 páginas

Projeto de RPA com Chuck Norris API

O projeto final de RPA de Murillo Rodrigues Santos Pereira utiliza a Chuck Norris API para coletar e processar piadas, armazenando-as em um banco de dados SQLite. O sistema inclui funções para buscar, inserir, traduzir e enviar piadas por e-mail, com foco na automação e no aprendizado prático em integração de APIs e gerenciamento de dados. Desafios técnicos enfrentados incluíram a tradução de textos e a autenticação para envio de e-mails, resultando em um aprimoramento nas habilidades de programação e resolução de problemas.

Enviado por

murillo.pereira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
23 visualizações8 páginas

Projeto de RPA com Chuck Norris API

O projeto final de RPA de Murillo Rodrigues Santos Pereira utiliza a Chuck Norris API para coletar e processar piadas, armazenando-as em um banco de dados SQLite. O sistema inclui funções para buscar, inserir, traduzir e enviar piadas por e-mail, com foco na automação e no aprendizado prático em integração de APIs e gerenciamento de dados. Desafios técnicos enfrentados incluíram a tradução de textos e a autenticação para envio de e-mails, resultando em um aprimoramento nas habilidades de programação e resolução de problemas.

Enviado por

murillo.pereira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Murillo Rodrigues Santos Pereira

RA: 2400338

Projeto Final de RPA

​ Escolha de API e justificativa: A API escolhida para o projeto foi a Chuck


Norris API, selecionada com o objetivo de tornar a aplicação mais leve e divertida.
Além de proporcionar um toque de humor, a escolha também foi uma forma de
relembrar a popularidade que Chuck Norris teve na internet em anos anteriores,
quando suas piadas e memes eram amplamente compartilhados.

​ Passo a passo:

●​ O primeiro passo do projeto consistiu na importação e instalação das


bibliotecas necessárias para sua execução. As bibliotecas utilizadas foram:
requests para realizar requisições HTTP, sqlite3 para o gerenciamento do
banco de dados local, re para operações com expressões regulares, datetime
para manipulação de datas, smtplib e email para o envio de e-mails via
protocolo SMTP, além da função GoogleTranslator, pertencente à biblioteca
deep_translator, responsável pela tradução automática dos textos.

●​ Foram definidas quatro categorias de piadas a serem extraídas da Chuck


Norris API, com o objetivo de organizar e diversificar o conteúdo coletado. As
categorias selecionadas foram: animal, dev (desenvolvimento), carreira e
música, todas disponibilizadas pela própria API para facilitar a segmentação
das piadas.
●​ Para o armazenamento local dos dados, foi estabelecida uma conexão com o
banco de dados SQLite, por meio da criação do arquivo projeto_rpa.db. Esse
banco foi utilizado para registrar tanto as piadas brutas obtidas da API quanto
os dados processados.

●​ Foram criadas duas tabelas no banco de dados SQLite para organizar e


estruturar as informações coletadas e processadas. A tabela jokes foi
responsável por armazenar todos os dados brutos retornados pela API,
incluindo a categoria original, data de criação, modificação, URL e o conteúdo
da piada. Já a tabela dados_processados foi criada para registrar os dados
tratados, como a tradução da piada e da categoria, a quantidade de palavras,
a informação sobre se a piada foi atualizada e sua idade, calculada em dias
desde sua criação.
●​ Função buscar_piadas(): Foi criada uma função responsável por se conectar
à API por meio de uma URL, utilizando uma das categorias previamente
definidas. Essa função realiza a requisição e retorna um conteúdo no formato
JSON contendo as informações brutas da piada, como o texto, a data de
criação, a data de modificação, a URL e a categoria.

●​ Função inserir_joke(): A função desenvolvida insere os dados originais


obtidos da API na tabela jokes do banco de dados e, após a inserção, retorna
o identificador único (id) gerado para o registro. Esse id é utilizado
posteriormente para relacionar as informações processadas com os dados
brutos armazenados.

●​ Função traduzir(): A função de tradução foi implementada para converter


textos automaticamente para o português brasileiro, utilizando o Google
Tradutor por meio da biblioteca deep_translator.
●​ Função processar_dados(): Essa função realiza um processamento mais
elaborado, integrando diversas etapas para tratar os dados coletados. Ela
traduz os campos category e content da tabela jokes para o português, conta
a quantidade de palavras do texto traduzido para avaliar o tamanho da piada,
calcula o tempo em dias desde a criação da piada e verifica se houve alguma
atualização no conteúdo. Por fim, todas essas informações são armazenadas
na tabela dados_processados, consolidando dados originais e processados
para facilitar consultas e análises futuras.

●​ Função executar_processo(): Essa função coordena o fluxo principal do


projeto, realizando a busca de uma piada na Chuck Norris API, salvando os
dados brutos obtidos na tabela jokes. Em seguida, esses dados são
processados, traduzidos para o português e armazenados na tabela
dados_processados.

●​ Função enviar_email(): A função responsável pelo envio do e-mail coleta as


quatro últimas piadas processadas no banco de dados e monta o corpo da
mensagem, incluindo tanto os dados traduzidos quanto os originais. Após a
montagem do conteúdo, o e-mail é enviado utilizando o protocolo SMTP do
Gmail.
●​ Execução: O script inicia a execução chamando a função
executar_processo(), que realiza a coleta e o processamento das piadas. Em
seguida, são definidos os dados de acesso necessários para o envio do
e-mail, como o remetente e a senha de aplicação. Por fim, a função
enviar_email() é chamada, recebendo esses dados como parâmetros para
realizar o envio automático da mensagem contendo as piadas processadas.

●​ Resultado esperado: O resultado esperado é a confirmação no terminal de


que as piadas buscadas foram armazenadas e o e-mail foi enviado.

​ Dificuldade e aprendizados: Durante o desenvolvimento deste projeto, foi


possível identificar e superar alguns desafios técnicos relevantes, que contribuíram
diretamente para o aprendizado prático. Um dos principais obstáculos envolveu o
uso da biblioteca de tradução, cuja estrutura exigiu atenção especial para garantir
que as traduções ocorressem de forma correta e sem erros. Além disso, a
integração com o serviço de envio de e-mails, utilizando o protocolo SMTP,
apresentou dificuldades relacionadas à autenticação, especialmente com provedores
como o Gmail, que requerem configurações específicas, como a ativação da
autenticação em duas etapas e o uso de senhas de aplicativo. Esses problemas
exigiram pesquisa e entendimento mais aprofundado sobre o funcionamento dessas
ferramentas e suas exigências de segurança. Como resultado, houve um
aprimoramento significativo na capacidade de lidar com APIs, bancos de dados
SQLite e processos de automação, fortalecendo a autonomia e a habilidade de
resolver problemas técnicos de forma eficiente.

Você também pode gostar