Blog

Postado em em 4 de junho de 2022

Automação Web com Playwright no Python

Hoje eu quero te mostrar como fazer automação web com playwright no Python para ter outra ferramenta de automação!

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:

Como Fazer Automação Web Usando Python

Você já deve ter ouvido falar da automação web com Python não é mesmo? Mas hoje eu quero te mostrar a automação web com Playwright!

E aí vamos aprender a fazer automação de processos no navegador utilizando a ferramenta do Playwrigth?

Automação de Processos no Navegador

Essa é uma ferramenta que permite a automação de processos dentro do navegador, então ele vai abrir o navegador e executar uma ação que você definir.

Lembrando que você sempre pode acessar a documentação do Playwright caso tenha alguma dúvida ou queira fazer algo diferente do que vamos fazer aqui hoje!

Para esse exemplo nós vamos utilizar o editor de código PyCharm, mas você pode utilizar qualquer outro editor!

O primeiro passo é fazer a instalação da ferramenta, então pode ir ao terminal e escrever: pip install playwright.

OBS: Garanta que o nome da ferramenta está escrito de forma correta.

Depois disso nós temos que inicializar a ferramenta com o seguinte código no terminal: playwright install.

O primeiro código foi para instalar a biblioteca do playwright, já o segundo código é para fazer a instalação dos navegadores que ele consegue controlar.

É que essa ferramenta vai abrir uma instância do navegador que ele controla, então ele não vai necessariamente abrir o seu navegador que está instalado no computador.

O código que nós vamos utilizar nessa aula é o que está abaixo:

from playwright.sync_api import sync_playwright
import time

with sync_playwright() as p:
    navegador = p.chromium.launch(headless=False) # headless
    pagina = navegador.new_page()
    pagina.goto("https://www.hashtagtreinamentos.com/curso-python")
    pagina.fill('xpath=//*[@id="_form_1919_"]/div[1]/div[1]/div/input', "Lira")
    pagina.fill('xpath=//*[@id="_form_1919_"]/div[1]/div[2]/div/input', '[email protected]')
    pagina.locator('xpath=//*[@id="_form_1919_submit"]').click()
    time.sleep(10)

Então vamos ter a importação do playwright e da biblioteca time e logo abaixo nós vamos ter a nossa automação que será feita.

Na primeira linha após o with que é onde vamos começar a nossa estrutura para abrir e fechar o navegador, nós temos a criação do navegador.

Aqui você pode dar uma olhada na documentação se estiver utilizando um navegador diferente, nesse caso vamos utilizar o Google Chrome.

O código (headless=false) que está dentro do parêntese é para que você consiga visualizar o navegador, caso contrário, por padrão, a ferramenta vai abrir e fechar o navegador em um segundo plano sem que você veja.

Em seguida nós vamos criar uma página no navegador e então vamos partir para o endereço da página que vamos acessar!

Logo abaixo, você vai visualizar 2 linhas de código começando com pagina.fill, ou seja, eles vão preencher alguma informação.

No primeiro nós vamos informar qual a posição do elemento que será preenchido e em seguida vamos dizer qual a informação vamos preencher.

Página da Hashtag onde vamos fazer as automações
Página da Hashtag onde vamos fazer as automações

Então, aqui no site que entramos da Hashtag, é possível encontrar a caixa de Primeiro Nome com o xpath e vamos preencher com o nome Lira.

IMPORTANTE: Se você não sabe como obter o xpath de um elemento em uma página da web nós temos uma publicação que mostra esse passo a passo, basta clicar aqui para acessar. É um processo bem simples, que dentro do próprio navegador você vai inspecionar e depois com o botão direito copiar o xpath daquele elemento.

Depois de preencher a primeira informação, nós vamos preencher a segunda informação, que é o e-mail.

image 5

Basta utilizar o mesmo código, só que dessa vez temos um xpath diferente, pois se trata de outro elemento.

Por fim nós vamos utilizar o pagina.locator para encontrar um elemento, então temos o .fill para preencher uma informação e o .locator para localizar um elemento.

Aqui nós vamos buscar pelo botão para prosseguir. Você vai encontrar o xpath dele da mesma maneira, só que ao invés de passarmos uma informação, já que não vamos preencher, vamos utilizar o comando .click() para que a ferramenta clique nesse botão.

Para finalizar utilizamos o time.sleep(10) para deixar o navegador aberto por mais 10 segundos para que você consiga visualizar o resultado.

Veja que com um simples código você já conseguiu entrar em uma página, preencher as informações de um formulário e enviá-lo.

Agora você pode adaptar para a sua necessidade, lembrando apenas de pegar o xpath correto de cada um dos elementos que quer preencher ou clicar para colocar suas informações!

A opção de pegar o xpath acaba sendo melhor porque geralmente ele se mantém sempre o mesmo (mantendo o mesmo navegador) é algo difícil de mudar, pois em alguns casos conseguimos utilizar a automação com base na posição.

Essa posição ela depende do tamanho da sua tela, então é possível que tenha problemas em telas diferentes, já com o xpath isso se mantém, pois é um caminho do próprio site.

Conclusão da Automação Web com Playwright

Nessa aula eu te mostrei como fazer a automação de processos com Python utilizando a ferramenta do playwright.

Ela é uma ferramenta fácil de utilizar e tem algumas ferramentas que facilitam essa automação.

Como você deve ter visto a parte de preencher um formulário é muito simples, então com esse conhecimento mais a documentação você já consegue fazer suas primeiras automações web!

Está esperando o que para testar e já fazer suas próprias automações para automatizar seus trabalhos?

Hashtag Treinamentos

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


Quer aprender mais sobre Python com um minicurso básico gratuito?

Quer sair do zero no Python e virar uma referência na sua empresa? Inscreva-se agora mesmo no Python Impressionador