Blog

Postado em em 2 de setembro de 2021

Preencher Formulários na Web com Python Utilizando Selenium

Nessa aula eu vou te mostrar como você pode preencher formulários na web com Python para automatizar suas tarefas e aumentar sua produtividade!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Resumo

Nessa aula eu vou te mostrar como você pode preencher formulários na web com Python!

Isso mesmo, vou te ensinar a preencher informações na web com Python para que você possa automatizar e facilitar seus processos repetitivos.

Dessa forma você vai economizar muito tempo e ainda vai se tornar mais produtivo no trabalho.

O que vamos aprender nessa aula:

Preencher Formulários com Python

Já pensou em preencher formulários, relatórios, informações para NF ou qualquer informação na web para automatizar seu trabalho?

Hoje eu vou te mostrar como você pode integrar Python com web para poder automatizar seus trabalhos e ganhar muito tempo nessas atividades repetitivas!

Preencher Formulários com Selenium

Na aula de hoje eu vou te ensinar como preencher formulários com informações de uma planilha para que você possa automatizar suas atividades e não perder horas fazendo o mesmo trabalho repetitivo.

Para isso nós vamos utilizar a biblioteca Selenium que permite fazer a integração do Python com Web.

OBS: Se você ainda não tem o Selenium instalado recomendo que dê uma olhada nesse post para ver como é feita a instalação e como instalar o webdriver que será necessário para fazer essa integração. O webdriver vai depender de qual navegador você utilizar, então terá que baixar um específico para o seu navegador. Para acessar a publicação basta clicar aqui!

Vamos então ao preenchimento das informações do formulário. Lembrando que tudo o que você precisa está disponível para download. Abaixo já temos o link do formulário que será utilizado.

https://forms.gle/fTG7MkjZqWaRgg2GA

Estamos utilizando esse Google Forms para facilitar e você entender como funciona esse procedimento, depois é claro, que você vai poder adaptar a sua necessidade!

from selenium import webdriver

navegador = webdriver.Firefox() #No Google Chrome navegador =webdriver.Chrome()
navegador.get("https://forms.gle/fTG7MkjZqWaRgg2GA")

Esse primeiro bloco de código é apenas para importar a biblioteca do selenium e o webdriver que é o responsável pela integração do Python com a web.

Em seguida estamos criando o nosso navegador (aqui você vai utilizar o webdriver referente ao seu navegador que utiliza). E por fim estamos falando para esse navegador entrar no site do formulário.

# preencher CPF
navegador.find_element_by_xpath(
    '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[1]/div/div/div[2]/div/div[1]/div/div[1]/input').send_keys("11111111111")
# preencher email
navegador.find_element_by_xpath(
    '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[2]/div/div/div[2]/div/div[1]/div/div[1]/input').send_keys("[email protected]")
#preencher descricao
navegador.find_element_by_xpath(
    '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[3]/div/div/div[2]/div/div[1]/div[2]/textarea').send_keys("Curso de Python")
#preencher valor
navegador.find_element_by_xpath(
    '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[4]/div/div/div[2]/div/div[1]/div/div[1]/input').send_keys("3000")

#clicar no botao
#navegador.find_element_by_xpath('//*[@id="mG61Hd"]/div[2]/div/div[3]/div[1]/div/div/span/span').click()

Aqui nós vamos ter o preenchimento das informações como foi mostrado no outro post. Lá mostramos como você pode obter o xpath para indicar onde especificamente vai clicar ou preencher uma informação.

OBS: A última linha que é para clicar no botão para enviar as informações está comentada. Isso é para que você consiga ver que todas as informações foram preenchidas corretamente. Depois você pode tirar o # da linha para executar ele de uma só vez.

Agora que você já sabe como preencher um formulário completo na web nós vamos para o próximo passo!

O próximo passo é utilizar as informações de uma tabela para poder fazer esse preenchimento.

Isso vai ser muito útil, pois as vezes você precisa por exemplo, gerar notas fiscais de 50 pessoas, você não vai mais fazer isso de forma manual.

Você já deve ter essas informações em uma planilha, não é mesmo? O que nós vamos fazer é utilizar essas informações para preencher tudo isso de forma automática.

Agora imagine esse trabalho que você levava horas, vai levar apenas alguns minutos.

Preencher Formulários na Web com Python - Importando planilha com pandas
Importando planilha com pandas

O primeiro passo é utilizar a biblioteca pandas para poder importar a sua planilha para dentro do Python, assim vamos poder utilizar essas informações para preencher os nossos dados.

for i, cpf in enumerate(tabela["CPF"]):
    email = tabela.loc[i, "Email"]
    descricao = tabela.loc[i, "Descrição"]
    valor = tabela.loc[i, "Valor"]
    
    navegador.get("https://forms.gle/fTG7MkjZqWaRgg2GA")
    # preencher CPF
    navegador.find_element_by_xpath(
        '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[1]/div/div/div[2]/div/div[1]/div/div[1]/input').send_keys(cpf)
    # preencher email
    navegador.find_element_by_xpath(
        '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[2]/div/div/div[2]/div/div[1]/div/div[1]/input').send_keys(email)
    #preencher descricao
    navegador.find_element_by_xpath(
        '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[3]/div/div/div[2]/div/div[1]/div[2]/textarea').send_keys(descricao)
    #preencher valor
    navegador.find_element_by_xpath(
        '//*[@id="mG61Hd"]/div[2]/div/div[2]/div[4]/div/div/div[2]/div/div[1]/div/div[1]/input').send_keys(str(valor))

    #clicar no botao
    navegador.find_element_by_xpath('//*[@id="mG61Hd"]/div[2]/div/div[3]/div[1]/div/div/span/span').click()

Esse código é basicamente o mesmo código que utilizamos no exemplo anterior, a única diferença é que agora vamos utilizar uma estrutura de repetição (estrutura For) para repetir esse procedimento.

Essa estrutura vai fazer com que o nosso código seja repetido de acordo com a quantidade de informações que temos dentro da nossa planilha.

Nesse caso nós temos 14 informações, então ele vai fazer isso de forma automática por 14 vezes sem que você tenha que preencher de forma manual, pois todos os dados já estão na planilha.

Você vai ver que esse código vai rodar em apenas alguns segundos e aí deixo pra você fazer a comparação.

Quanto tempo você levaria para fazer esse preenchimento simples de 14 informações e quanto tempo o código levou para fazer essa mesma ação.

Assim você vai ver quanto tempo vai economizar por dia nessa atividade repetitiva.

Conclusão para Preencher Formulários na Web com Python

Nessa aula eu te mostrei como você pode preencher formulários ou informações na web utilizando o Python e o Selenium.

Outro ponto que te mostrei é como automatizar esse procedimento caso você tenha uma planilha com diversas informações que precisa repetir esse processo.

Com isso você vai ganhar muito tempo e se tornar ainda mais produtivo nas suas tarefas! Agora é correr para a prática e testar com outras informações para ver se fixou o conteúdo!

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso gratuito?