Ruby:
การวิเคราะห์ HTML

วิธีการ:

เพื่อทำการแยกส่วน HTML ใน Ruby, ติดตั้ง ‘Nokogiri’ gem ด้วยคำสั่ง gem install nokogiri Nokogiri เหมือนเป็นมีดสวิสสำหรับการทำงานกับ HTML และ XML ใน Ruby นี่คือตัวอย่างง่ายๆ:

require 'nokogiri'
require 'open-uri'

# โหลดเนื้อหา HTML จากเว็บไซต์
html_content = URI.open('http://example.com').read

# แยกส่วน HTML
doc = Nokogiri::HTML(html_content)

# ดึงชื่อเรื่อง
title = doc.xpath('//title').text
puts "ชื่อของหน้านี้คือ: #{title}"

สิ่งนี้จะแสดงผลว่า: ชื่อของหน้านี้คือ: Example Domain.

ศึกษาเพิ่มเติม

ย้อนกลับไปในช่วงต้นๆ ของ Ruby, ตัวเลือกสำหรับการแยกส่วน HTML มีจำกัด REXML ซึ่งผนวกมาในตัว แต่ทำงานช้า จากนั้น Hpricot ก็เข้ามา แต่ก็ค่อยๆ หายไป Nokogiri เปิดตัวในปี 2008, ผสมผสานความง่ายของ Hpricot กับความเร็วและพลังของ libxml, ชุดเครื่องมือ XML ที่ได้รับการพิสูจน์แล้ว

ในโลกการแยกส่วน, มีตัวเลือกอื่นๆ อยู่เสมอ บางคนยังคงใช้ไลบรารี ‘rexml’ ที่มีอยู่ตั้งแต่แรกหรือ ‘oga’, อีกหนึ่งตัวแยกส่วน XML/HTML สำหรับ Ruby แต่ Nokogiri ยังคงเป็นที่ชื่นชอบด้วยความเข้มแข็งและความเร็วของมัน, ไม่ต้องพูดถึงคุณสมบัติมากมายที่มันมี

ภายใต้ฝาครอบ, Nokogiri แปลง HTML เป็น Document Object Model (DOM)—โครงสร้างแบบต้นไม้ ทำให้ง่ายต่อการนำทางและจัดการกับองค์ประกอบ โดยใช้ XPath และ CSS selectors, คุณสามารถระบุข้อมูลใดๆ ที่คุณต้องการได้อย่างแม่นยำ

ดูเพิ่มเติม