使用 Playwright 与 Ruby:2024 年逐步指南

Lucas Mitchell
Automation Engineer
02-Sep-2024
使用 Playwright 与 Ruby:2024 年逐步指南
网络抓取已成为开发人员必备技能,他们需要从网站收集数据。Playwright 是一款强大的浏览器自动化工具,常用于此目的。在本指南中,我们将探讨如何使用 Playwright 与 Ruby 从网站抓取数据。我们将使用 Quotes to Scrape 网站逐步完成一个实际示例。
先决条件
在我们开始之前,请确保你的机器上已安装以下内容:
- Ruby (版本 2.7 或更高版本)
- Node.js (Playwright 需要 Node.js 才能运行)
- Playwright Gem (Playwright 的 Ruby 包装器)
你可以通过运行以下命令来安装必要的依赖项:
bash
gem install playwright-ruby-client
设置 Playwright
安装 playwright-ruby-client gem 后,你需要在 Ruby 脚本中设置 Playwright。以下是操作方法:
ruby
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/')
# 示例抓取代码将位于此处
browser.close
end
将 '/path/to/node_modules/.bin/playwright' 替换为系统中 Playwright CLI 的实际路径。
从网站抓取引言
现在,让我们编写代码来从网站抓取引言。我们将提取每个引言的文本及其对应的作者。
ruby
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
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
本指南向您展示了如何在 Ruby 中设置 Playwright 以及如何从网站上抓取数据。这里使用的示例很简单,但可以扩展以完成更复杂的任务。Playwright 自动执行浏览器任务的能力使其成为网页抓取和测试的强大工具。
祝您抓取愉快!
合规声明: 本博客提供的信息仅供参考。CapSolver 致力于遵守所有适用的法律和法规。严禁以非法、欺诈或滥用活动使用 CapSolver 网络,任何此类行为将受到调查。我们的验证码解决方案在确保 100% 合规的同时,帮助解决公共数据爬取过程中的验证码难题。我们鼓励负责任地使用我们的服务。如需更多信息,请访问我们的服务条款和隐私政策。
更多

基于大模型的人工智能验证码:为什么它更适合企业场景
AI视觉模型如何重塑CAPTCHA识别,以及企业级求解器为何需要数据、规模和定制训练。

Ethan Collins
13-Mar-2026

WebMCP 与 MCP:对AI代理有什么区别?
探索WebMCP与MCP在AI代理中的关键差异,了解它们在网页自动化和结构化数据交互中的作用。学习这些协议如何塑造AI代理能力的未来。

Lucas Mitchell
13-Mar-2026

开OpenClaw 对比 Nanobot:选择你的AI代理用于自动化
比较 OpenClaw 和 Nanobot,两个领先的 AI 代理框架,以实现高效自动化。了解它们的功能、性能以及 CapSolver 如何增强其能力。

Ethan Collins
11-Mar-2026

如何使用 CapSolver 和 n8n 解决 Cloudflare Turnstile
使用CapSolver和n8n构建一个Cloudflare Turnstile求解API。学习如何自动化解决令牌,将其提交到网站,并无需编码即可提取受保护的数据。

Adélia Cruz
10-Mar-2026

如何在OpenClaw中解决验证码 – 使用CapSolver扩展的逐步指南
学习如何使用CapSolver Chrome扩展程序在OpenClaw中解决CAPTCHA以实现无缝AI浏览器自动化。

Anh Tuan
06-Mar-2026

面向开发者的浏览器自动化:2026年掌握Selenium与验证码
通过这份2026年指南,掌握浏览器自动化开发。学习Selenium WebDriver Java、Actions接口以及如何使用CapSolver解决验证码。

Sora Fujimoto
02-Mar-2026

