Sử dụng Playwright với Ruby: Hướng dẫn từng bước cho năm 2024

Lucas Mitchell
Automation Engineer
02-Sep-2024
Sử dụng Playwright với Ruby: Hướng dẫn từng bước cho năm 2024
Web scraping đã trở thành một kỹ năng cần thiết cho các nhà phát triển cần thu thập dữ liệu từ các trang web. Playwright, một công cụ tự động hóa trình duyệt mạnh mẽ, thường được sử dụng cho mục đích này. Trong hướng dẫn này, chúng ta sẽ khám phá cách sử dụng Playwright với Ruby để trích xuất dữ liệu từ một trang web. Chúng ta sẽ đi qua một ví dụ thực tế bằng cách sử dụng trang web Quotes to Scrape.
Điều kiện tiên quyết
Trước khi bắt đầu, hãy đảm bảo rằng bạn đã cài đặt những thứ sau trên máy của mình:
- Ruby (Phiên bản 2.7 trở lên)
- Node.js (Playwright yêu cầu Node.js để chạy)
- Playwright Gem (Bao bọc Ruby cho Playwright)
Bạn có thể cài đặt các phụ thuộc cần thiết bằng cách chạy:
bash
gem install playwright-ruby-client
Cài đặt Playwright
Sau khi cài đặt gem playwright-ruby-client, bạn cần thiết lập Playwright trong tập lệnh Ruby của mình. Đây là cách bạn có thể làm điều đó:
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/')
# Mã trích xuất ví dụ sẽ được đưa vào đây
browser.close
end
Thay thế '/path/to/node_modules/.bin/playwright' bằng đường dẫn thực tế đến Playwright CLI trên hệ thống của bạn.
Trích xuất Trích dẫn từ Trang web
Bây giờ, hãy viết mã để trích xuất trích dẫn từ trang web. Chúng ta sẽ trích xuất văn bản của mỗi trích dẫn và tác giả tương ứng.
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
require 'playwright'
Playwright.create do |playwright|
browser = playwright.chromium.launch
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
Hướng dẫn này đã chỉ cho bạn cách thiết lập Playwright với Ruby và trích xuất dữ liệu từ một trang web. Ví dụ được sử dụng ở đây rất đơn giản nhưng có thể được mở rộng cho các tác vụ phức tạp hơn. Khả năng tự động hóa các tác vụ trình duyệt của Playwright biến nó thành một công cụ mạnh mẽ để trích xuất dữ liệu web và kiểm tra.
Chúc bạn trích xuất dữ liệu vui vẻ!
Tuyên bố Tuân thủ: Thông tin được cung cấp trên blog này chỉ mang tính chất tham khảo. CapSolver cam kết tuân thủ tất cả các luật và quy định hiện hành. Việc sử dụng mạng lưới CapSolver cho các hoạt động bất hợp pháp, gian lận hoặc lạm dụng là hoàn toàn bị cấm và sẽ bị điều tra. Các giải pháp giải captcha của chúng tôi nâng cao trải nghiệm người dùng trong khi đảm bảo tuân thủ 100% trong việc giúp giải quyết các khó khăn về captcha trong quá trình thu thập dữ liệu công khai. Chúng tôi khuyến khích việc sử dụng dịch vụ của chúng tôi một cách có trách nhiệm. Để biết thêm thông tin, vui lòng truy cập Điều khoản Dịch vụ và Chính sách Quyền riêng tư.
Thêm

CAPTCHA Trí tuệ nhân tạo được cung cấp bởi các mô hình lớn: Tại sao nó phù hợp hơn cho các tình huống doanh nghiệp?
Cách các mô hình thị giác AI đang định hình lại nhận diện CAPTCHA và tại sao các giải pháp cấp doanh nghiệp cần dữ liệu, quy mô và đào tạo tùy chỉnh.

Anh Tuan
13-Mar-2026

WebMCP so với MCP: Khác nhau ở đâu đối với các tác nhân AI?
Khám phá những khác biệt chính giữa WebMCP và MCP cho các tác nhân AI, hiểu vai trò của chúng trong tự động hóa web và tương tác dữ liệu có cấu trúc. Học cách các giao thức này định hình tương lai khả năng của các tác nhân AI.

Aloísio Vítor
13-Mar-2026

Cách giải quyết Cloudflare Turnstile bằng CapSolver và n8n
Xây dựng API giải mã Cloudflare Turnstile bằng CapSolver và n8n. Học cách tự động hóa việc giải token, gửi nó đến các trang web và trích xuất dữ liệu được bảo vệ mà không cần lập trình.

Anh Tuan
10-Mar-2026

Cách giải CAPTCHA trong OpenClaw – Hướng dẫn từng bước với phần mở rộng CapSolver
Học cách giải CAPTCHA trong OpenClaw bằng phần mở rộng CapSolver cho Chrome để tự động hóa trình duyệt AI mượt mà.

Anh Tuan
06-Mar-2026

Tại sao Chiến lược Đa Tài Khoản Của Bạn Cần Cả Cô Lập Môi Trường và Lách AI
Thành thạo quản lý nhiều tài khoản với AdsPower và CapSolver. Sử dụng cô lập môi trường và tránh AI để tránh bị cấm tài khoản.

Anh Tuan
02-Mar-2026

Tự động hóa PicoClaw: Hướng dẫn tích hợp CapSolver API
Học cách tích hợp CapSolver với PicoClaw để giải mã CAPTCHA tự động trên thiết bị phần cứng cạnh siêu nhẹ 10 đô la.

Anh Tuan
02-Mar-2026

