🥳Junte-se à Comunidade Scrapeless e Solicite sua avaliação gratuita para acessar nosso poderoso kit de ferramentas de Web Scraping!
Voltar ao blog

Use Playwright para contornar CAPTCHA

Ava Wilson
Ava Wilson

Expert in Web Scraping Technologies

26-Sep-2024

A segurança do site agora depende muito de CAPTCHAs, ou Testes Públicos de Turing Completamente Automatizados para Diferenciar Computadores e Humanos. Quando o sistema de segurança de um site detecta uma atividade incomum (como um padrão de acesso que se desvia do comportamento humano típico), ele carrega um CAPTCHA (como reCAPTCHA, som ou quebra-cabeças de imagem) para impedir que bots acessem o site.

Uma vez que um desafio CAPTCHA é carregado, pode ser bastante difícil superá-lo. No entanto, existem algumas maneiras pelas quais seu script pode se comunicar com o firewall da web de uma maneira mais humana. Portanto, você pode impedir totalmente o CAPTCHA de carregar. Isso é conhecido como evasão ou bypass de CAPTCHA.
Este guia abrangente mostra como usar o Playwright para usar o Python para contornar problemas com CAPTCHA. As vantagens de usar o Captcha Solver do Scrapeless em vez da biblioteca playwright-stealth também serão abordadas na lição.

Observação: É contra a lei e a moralidade contornar CAPTCHAs para fins nefastos ou ilegais. Esta lição tem como objetivo principal fins educacionais. Para evitar problemas legais, recomendamos fortemente que os usuários leiam os Termos de Serviço do site de destino na íntegra.

Contornar CAPTCHA usando Playwright

O Playwright oferece uma API poderosa e intuitiva para interagir com páginas da web, permitindo que os desenvolvedores executem operações como clicar em componentes, preencher formulários e obter dados de sites dinâmicos. A compatibilidade entre navegadores é garantida pelo seu suporte a vários navegadores, incluindo Chromium, Firefox e WebKit. Além disso, o Playwright é adequado para atividades de web scraping devido à sua capacidade de modo sem cabeça, que permite interações ocultas com o navegador.

Pode ser difícil confiar apenas na abordagem de salto de CAPTCHA do Playwright, pois os sites podem identificar o tráfego proveniente de programas sem cabeça e automatizados. Felizmente, o pacote `playwright-stealth} está disponível para ajudar.

O Playwright e o pacote stealth juntos fornecem uma combinação potente para contornar CAPTCHAs. As instâncias de navegador sem cabeça do Playwright parecem mais humanas para os sites graças ao pacote stealth. Consequentemente, diminui a probabilidade de ser encontrado pelos sites.

Vamos criar um script Python que abre uma conexão web no modo sem cabeça para mostrar como lidar com CAPTCHA no Playwright. Depois disso, ele tira uma captura de tela do link de destino e a armazena localmente. Se a captura de tela mostrar o conteúdo real do site em vez de uma caixa CAPTCHA ou reCAPTCHA, o script foi bem-sucedido.

Vamos dar uma olhada em um processo passo a passo para desenvolver qualquer script desse tipo e configurar o stealth usando o Playwright no Python.

1. Configurar as dependências necessárias

Instale o pacote stealth e a biblioteca Playwright.

language Copy
pip install playwright playwright-stealth

2. Módulos para importação

Para um fluxo de programa simples e linear, use a versão síncrona da biblioteca Playwright.

language Copy
from playwright.sync_api import sync_playwright
from playwright_stealth import stealth_sync

Defina o método capture_screenshot(), que contém todo o código para iniciar uma instância de navegador sem cabeça, navegar até o URL e tirar uma captura de tela. Crie uma nova instância de sync_playwright dentro desse método e use-o para iniciar o navegador Chromium no modo sem cabeça.

language Copy
# Define a função para capturar a captura de tela
def capture_screenshot():
    # Crie uma instância playwright
    with sync_playwright() as play_wright:
        browser = play_wright.chromium.launch(headless=True)

        # Crie um novo contexto e página
        context = browser.new_context()
        page = context.new_page()

4. Utilize as configurações stealth.

Use o pacote playwright-stealth para aplicar as configurações stealth à página e habilitar os bypasses de CAPTCHA do Playwright após gerar o contexto do navegador. Ao ocultar o comportamento automático dos navegadores, as configurações stealth ajudam a reduzir a probabilidade de detecção de acesso automatizado.

language Copy
        # Aplique as configurações stealth
        stealth_sync(page)

5. Abra a página.

A próxima etapa é usar a função de página goto() para ir até o URL de destino fornecendo o URL apropriado.

language Copy
# Navegue até o site
        url = "https://www.scrapeless.com/"
        page.goto(url)

6. Pegue uma captura de tela

Depois que o site for totalmente carregado, tire uma captura de tela e saia do navegador.

language Copy
        # Aguardar o carregamento completo da página da web
        page.wait_for_load_state("load")

        # Tire uma captura de tela
        screenshot_filename = "scrapeless_screenshot.png"
        page.screenshot(path=screenshot_filename)

        # Feche o navegador
        browser.close()

        print("Concluído! Você pode verificar a captura de tela...")

capture_screenshot()

Está cansado de CAPTCHAs e bloqueios contínuos de web scraping?

Scrapeless: a melhor solução completa de extração de dados online disponível!

Utilize nosso formidável kit de ferramentas para liberar todo o potencial de sua extração de dados:

Melhor resolvedor de CAPTCHA

Resolução automatizada de CAPTCHAs complexos para garantir a extração contínua e suave.

Experimente grátis!

Em resumo

O Playwright pode ser usado para raspar conteúdo de sites com proteção CAPTCHA padrão quando emparelhado com o pacote playwright-stealth. Consulte nossas postagens de blog para obter informações adicionais sobre como configurar o Playwright com proxies, usar o Playwright para raspar sites e combinar o Playwright com o Scrapy. Obtenha uma avaliação gratuita de nossos proxies premium para ajudá-lo a decidir quais proxies melhor atendem às suas necessidades se ainda não tiver certeza.

No entanto, uma solução de bypass mais complexa e inteligente é necessária para contornar o CAPTCHA (como o reCAPTCHA) para sites que usam software anti-bot sofisticado. Para superar CAPTCHAs complexos, o CAPTCHA Solver do Scrapeless integra automaticamente as mais novas abordagens de IA com táticas de bypass (como proxies e rotação de IP, estabelecimento de impressões digitais realistas e renderização JS).

Na Scrapeless, acessamos apenas dados disponíveis publicamente, cumprindo rigorosamente as leis, regulamentos e políticas de privacidade do site aplicáveis. O conteúdo deste blog é apenas para fins de demonstração e não envolve quaisquer atividades ilegais ou infratoras. Não oferecemos garantias e nos isentamos de qualquer responsabilidade pelo uso de informações deste blog ou de links de terceiros. Antes de se envolver em qualquer atividade de scraping, consulte seu consultor jurídico e revise os termos de serviço do site de destino ou obtenha as permissões necessárias.

Artigos mais populares

Catálogo