Este blog é um complemento do nosso canal no YouTube. Clique em @CanalQb para seguir e acompanhar nossos vídeos!

Sugestões de pesquisas

Selenium: Como usar user agent fake para evitar detecção

#selenium; #automação; #webscraping
@CanalQb

Selenium - Usando user agent fake para evitar detecção

@CanalQb no YouTube

Você já percebeu que alguns sites conseguem identificar quando o acesso está sendo feito via Selenium? Isso pode dificultar a automação de tarefas, pois muitos sites bloqueiam ou limitam acessos automatizados.

Mas não se preocupe! Neste artigo, vamos mostrar algumas técnicas eficazes para "burlar" essa detecção usando user agents falsos e outras estratégias.

Por que os sites detectam Selenium?

Sites usam diversos métodos para identificar se um acesso está sendo feito por automação, como a análise do user agent, comportamento do navegador, velocidade de interações e outras características que diferem de um usuário real.

Como usar um user agent fake no Selenium

O user agent é uma string enviada pelo navegador ao servidor para se identificar. Por padrão, o Selenium utiliza o user agent do Chrome, que pode ser facilmente detectado. Alterar o user agent para um valor aleatório ou mais comum ajuda a disfarçar o Selenium.

Veja um exemplo em Python usando a biblioteca fake_useragent para gerar um user agent aleatório:

from fake_useragent import UserAgent
from selenium import webdriver

options = webdriver.ChromeOptions()
user_agent = UserAgent().random
options.add_argument(f'user-agent={user_agent}')
driver = webdriver.Chrome(options=options)

Uso de proxy para ocultar o IP

Outra estratégia é usar proxies para esconder seu endereço IP, dificultando o rastreamento do acesso automatizado. Serviços como ProxyMesh oferecem opções confiáveis.

Exemplo básico de configuração de proxy no Selenium:

from selenium import webdriver
from selenium.webdriver.common.proxy import Proxy, ProxyType

PROXY_HOST = 'proxy.proxymesh.com'
PROXY_PORT = '31280'
PROXY_USER = 'usuario'
PROXY_PASS = 'senha'

proxy_url = f'http://{PROXY_USER}:{PROXY_PASS}@{PROXY_HOST}:{PROXY_PORT}'

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument(f'--proxy-server={proxy_url}')
chrome_options.add_argument('start-maximized')

proxy = Proxy()
proxy.proxy_type = ProxyType.MANUAL
proxy.http_proxy = proxy_url
proxy.ssl_proxy = proxy_url

capabilities = webdriver.DesiredCapabilities.CHROME
proxy.add_to_capabilities(capabilities)

driver = webdriver.Chrome(options=chrome_options, desired_capabilities=capabilities)

# Continue com seu código...

Técnicas para simular comportamento humano

Além das configurações técnicas, é importante simular o comportamento humano para evitar detecção, como:

  • Usar esperas explícitas entre ações para simular o tempo que um usuário real leva para interagir;
  • Ajustar o tempo de carregamento da página para refletir condições reais de conexão;
  • Evitar cliques e movimentações de mouse muito rápidos ou repetitivos.

Considerações finais

Automatizar com Selenium pode ser uma poderosa ferramenta, mas é fundamental respeitar as políticas dos sites acessados e agir com responsabilidade.

Além disso, recomendamos sempre validar cada cenário individualmente, pois a detecção pode variar bastante entre diferentes sites e atualizações.

Para mais dicas e tutoriais sobre automação, visite o @CanalQb no YouTube.

Postar um comentário

Comente só assim vamos crescer juntos!
CanalQb mais próximo Quer falar com o CanalQb?
Em que posso te ajudar?
Fale comigo