Blog

Postado em em 1 de novembro de 2021

Automação de Instagram com Python – Usando a Biblioteca Selenium

Hoje vamos para mais uma automação web, só que nessa aula eu quero te mostrar como fazer automação de Instagram com Python!

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

Automação de Instagram com Python

Na aula de hoje eu quero te mostrar como criar automação de Instagram no Python para que você consiga automatizar algumas ações.

Isso pode te ajudar a diminuir o tempo de algumas ações que faz na web e com isso você pode se tornar mais produtivo.

Automação no Instagram com Python

Nessa aula nós vamos utilizar a biblioteca Selenium que já utilizamos aqui no canal em outro post!

IMPORTANTE: Esse é apenas um exemplo para te ensinar automação com Python, então é importante que você tome cuidado para não tomar um bloqueio por conta da automação que está fazendo dentro do Instagram!

A biblioteca Selenium vai auxiliar na questão da automação web, então você vai precisar instalar a biblioteca com o comando pip install selenium.

Em seguida você vai ter que fazer o download do webdriver no Python compatível com o navegador que vai utilizar para fazer a automação.

OBS: Webdriver nada mais é do que um programa que vai auxiliar a biblioteca a acessar o seu navegador para que possa executar as ações descritas no seu código.

Então no próprio Google você pode pesquisar por chromedriver (webdriver para o Google Chrome) ou geckodriver (webdriver para o FireFox), lembrando que esses dois são os mais utilizados.

Mas caso utilize algum navegador diferente pode buscar o webdriver referente a versão do seu navegador.

Depois basta colocar um ou todos que baixar dentro da pasta onde está o seu código para que a automação funcione corretamente.

Agora vamos para a parte interessante de como fazer automação web com Python no Instagram!

from selenium import webdriver

navegador = webdriver.Chrome("chromedriver.exe")
Passos que vamos seguir para criar a automação (lógica de programação)
Passos que vamos seguir para criar a automação (lógica de programação)

Para esse exemplo vamos utilizar o webdriver do Chrome, mas o procedimento é o mesmo para os outros navegadores, só vai ter que alterar o código após webdriver e o nome do que estiver utilizando.

Aqui nós vamos seguir esses 7 passos para que fique mais fácil de entender como vai funcionar essa automação.

São passos bem simples, mas é muito importante que na construção dos seus códigos você consiga separar essa parte para seguir corretamente e verificar se cada parte está funcionando.

Esses passos são muito úteis para que você possa criar sua lógica de programação, então vai anotar o que você faria se estivesse fazendo manualmente para depois escrever o código.

# passo 1: entrar no site do instagram
navegador.get("https://www.instagram.com/")
time.sleep(2)

# passo 2: fazer login
from senha import senha

navegador.find_element_by_xpath('//*[@id="loginForm"]/div/div[1]/div/label/input').send_keys("pythonlira")
navegador.find_element_by_xpath('//*[@id="loginForm"]/div/div[2]/div/label/input').send_keys(senha)
navegador.find_element_by_xpath('//*[@id="loginForm"]/div/div[3]/button/div').click()
time.sleep(3)

# passo 3: clicar no agora não salvar informações de login
navegador.find_element_by_xpath('//*[@id="react-root"]/section/main/div/div/div/div/button').click()
time.sleep(2)

Nesses passos nós vamos fazer como se fosse de forma manual mesmo, então vamos abrir o site, escrever o login, escrever a senha, clicar para entrar na conta.

Depois vamos clicar para não salvar as informações de login.

OBS: No nosso post de Automação Web no Python nós explicamos em mais detalhes essa parte do xpath para que você consiga pegar o caminho exato de um elemento em uma página da web. Dessa forma vai conseguir pegar o “endereço” desse elemento sem que precise passar as coordenadas de onde está o elemento como temos um exemplo no post de Criar Bot no Python.

# passo 4: clicar no agora não da notificação
navegador.find_element_by_xpath('/html/body/div[5]/div/div/div/div[3]/button[2]').click()
time.sleep(1)

# passo 5: clicar na barra de pesquisa
navegador.find_element_by_xpath('//*[@id="react-root"]/section/nav/div[2]/div/div/div[2]/div[1]/div').click()

# passo 6: digitar hashtag programação
navegador.find_element_by_xpath('//*[@id="react-root"]/section/nav/div[2]/div/div/div[2]/input').send_leys("hashtag programação")
time.sleep(0.5)

# passo 7: clicar no perfil da hashtag programação
navegador.find_element_by_class_name('qQT3').click()
time.sleep(3)

# passo 6: clicar no botão de seguir
navegador.find_element_by_xpath('//*[@id="react-root"]/section/main/div/header/section/div[1]/div[1]/div/div/div/span/span[1]/button').click()

Aqui nós temos os outros passos do código, que são sempre seguindo o passo que você faria se estivesse entrando de forma manual.

Então vai clicar, preencher alguma informação. Só que o xpath pode acabar mudando caso tenha alguma atualização no site ou algo do gênero.

Quando isso acontecer você pode pesquisar por outros elementos como classe (que usamos no passo 7 para achar o perfil e clicar nele) ou até mesmo o ID.

Isso tudo vai depender da sua necessidade, e claro, você vai sempre poder fazer suas alterações para executar exatamente o que precisa.

Então pode utilizar para outros fins dentro do Instagram ou na web de modo geral utilizando xpath para encontrar elementos, send_keys para escrever uma informação, o .click para clicar em um botão ou em um local específico.

Conclusão

Nessa aula eu te mostrei como você pode criar uma automação de Instagram no Python utilizando a biblioteca Selenium.

Agora você pode criar suas próprias automações não só no Instagram, mas na web de um modo geral para facilitar suas atividades diárias que são repetitivas e acabam levando muito tempo.

E aí, animado para criar sua automação e ver o trabalho sendo feito de forma automática?

Hashtag Treinamentos

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


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

Quer ter acesso a um Minicurso de Finanças no Excel de forma 100% gratuita? Preencha seu e-mail abaixo!