CAPSOLVER
Blog
Usando Playwright com Ruby: Guia passo a passo para 2024

Usando Playwright com Ruby: Guia Passo a Passo para 2024

Logo of CapSolver

Lucas Mitchell

Automation Engineer

02-Sep-2024

Usando Playwright com Ruby: Guia passo a passo para 2024

A raspagem de dados da web tornou-se uma habilidade essencial para desenvolvedores que precisam coletar dados de sites. Playwright, uma poderosa ferramenta de automação de navegador, é frequentemente usada para esse propósito. Neste guia, exploraremos como usar Playwright com Ruby para raspar dados de um site. Passaremos por um exemplo prático usando o site Quotes to Scrape.

Pré-requisitos

Antes de começarmos, certifique-se de que você tenha o seguinte instalado em sua máquina:

  • Ruby (Versão 2.7 ou posterior)
  • Node.js (Playwright precisa do Node.js para executar)
  • Playwright Gem (wrapper Ruby para Playwright)

Você pode instalar as dependências necessárias executando:

bash Copy
gem install playwright-ruby-client

Configurando Playwright

Após instalar a gema playwright-ruby-client, você precisa configurar Playwright em seu script Ruby. Aqui está como você pode fazer isso:

ruby Copy
require 'playwright'

Playwright.create(playwright_cli_executable_path: '/path/to/node_modules/.bin/playwright') do |playwright|
  browser = playwright.chromium.launch(headless: false)
  page = browser.new_page
  page.goto('http://quotes.toscrape.com/')
  
  # O código de raspagem de exemplo ficará aqui
  
  browser.close
end

Substitua '/path/to/node_modules/.bin/playwright' pelo caminho real para o Playwright CLI em seu sistema.

Raspando Citas do Site

Agora, vamos escrever o código para raspar citações do site. Extrairemos o texto de cada citação e o autor correspondente.

ruby Copy
require 'playwright'

Playwright.create(playwright_cli_executable_path: '/path/to/node_modules/.bin/playwright') do |playwright|
  browser = playwright.chromium.launch(headless: false)
  page = browser.new_page
  page.goto('http://quotes.toscrape.com/')
  
  quotes = page.query_selector_all('.quote')

  quotes.each do |quote|
ruby Copy
require 'playwright'

Playwright.create do |playwright|
  browser = playwright.chromium.launch(headless: false)
  page = browser.new_page

  page.goto('http://quotes.toscrape.com/')

  page.query_selector_all('.quote').each do |quote|
    quote_text = quote.query_selector('.text').text_content.strip
    author = quote.query_selector('.author').text_content.strip
    puts "#{quote_text} - #{author}"
  end

  browser.close
end

Este guia mostrou como configurar o Playwright com Ruby e coletar dados de um site. O exemplo usado aqui é simples, mas pode ser expandido para tarefas mais complexas. A capacidade do Playwright de automatizar tarefas de navegador o torna uma ferramenta poderosa para coleta de dados da web e testes.

Feliz coleta de dados!

Declaração de Conformidade: As informações fornecidas neste blog são apenas para fins informativos. A CapSolver está comprometida em cumprir todas as leis e regulamentos aplicáveis. O uso da rede CapSolver para atividades ilegais, fraudulentas ou abusivas é estritamente proibido e será investigado. Nossas soluções de resolução de captcha melhoram a experiência do usuário enquanto garantem 100% de conformidade ao ajudar a resolver dificuldades de captcha durante a coleta de dados públicos. Incentivamos o uso responsável de nossos serviços. Para mais informações, visite nossos Termos de Serviço e Política de Privacidade.

Mais