کتابخانه رایگان روبی برای خواندن، نوشتن و تجزیه فایلهای HTML
کتابخانه منبع باز روبی برای مدیریت اسناد HTML و XML. این کتابخانه از خواندن، نوشتن، تغییر و پرسوجو در اسناد HTML از طریق API روبی پشتیبانی میکند.
در دنیای توسعه وب، تجزیه و دستکاری اسناد HTML و XML کارهای رایجی هستند. زبان برنامهنویسی روبی ابزار قدرتمندی برای انجام این کارها از طریق کتابخانه نوکوجیری ارائه میدهد. نوکوجیری روشی زیبا و کارآمد برای تجزیه و دستکاری اسناد HTML و XML فراهم میکند و آن را به ابزاری ضروری در جعبه ابزار هر توسعهدهنده روبی تبدیل میسازد. چه مبتدی باشید و چه توسعهدهندهی باتجربه، این کتابخانه فرآیند کار با اسناد ساختاریافته در روبی را ساده میکند.
نوکوجیری یک جواهر (gem) بسیار قدرتمند و منبع باز برای روبی است که به عنوان پلی بین زبان برنامهنویسی روبی و کتابخانههای libxml2 و libxslt عمل میکند. این ابزار به توسعهدهندگان نرمافزار امکان میدهد تا به راحتی اسناد HTML و XML را تجزیه و دستکاری کنند. چه دادهها را از وبسایتها استخراج کنید، چه اطلاعات را از APIهای مبتنی بر XML به دست آورید یا چه تبدیلهایی بر روی ساختارهای سند انجام دهید، این کتابخانه این کارها را ساده میکند. این کتابخانه از جستجوی سند با XPath 1.0، اعتبارسنجی XSD Schema، پارسر DOM یا SAX برای XML، تبدیل XSLT، HTML4 و HTML5 و غیره پشتیبانی میکند.
Nokogiri یک API آسان برای درک برای خواندن، نوشتن، تغییر و پرسوجو اسناد فراهم کرده است. این کتابخانه پشتیبانی کامل از رمزگذاری اسناد را ارائه میدهد. برای مدیریت صحیح رمزگذاری سند، همیشه توصیه میشود که رمزگذاری را بهصورت صریح تنظیم کنید. سهولت استفاده، روشهای انتخاب قدرتمند و قابلیتهای کارآمد دستکاری، آن را به گزینهای عالی برای کارهایی مانند استخراج وب، پردازش XML و تجزیه HTML تبدیل میکند. پس پیش بروید، ویژگیهای آن را کاوش کنید و پتانسیل تجزیه و دستکاری مؤثر اسناد را در پروژههای Ruby خود باز کنید.
شروع کار با نوکوجیری
روش پیشنهادی و آسان برای نصب Nokogiri استفاده از RubyGems است، ابزار مدیریت وابستگی برای Ruby. لطفاً برای نصب روان از فرمان زیر استفاده کنید.
نصب نوکوجیری از طریق RubyGemsx
$ gem install nokogiriهمچنین میتوانید آن را بهصورت دستی نصب کنید؛ فایلهای آخرین نسخه را مستقیماً از مخزن GitHub دانلود کنید.
تجزیه اسناد HTML از طریق API روبی
کتابخانه منبع باز Nokogiri پشتیبانی از بارگذاری و تجزیه اسناد HTML و همچنین XML را در برنامههای Ruby فراهم کرده است. تجزیه اسناد HTML و XML ستون فقرات قابلیتهای Nokogiri است. این کتابخانه دو روش اصلی برای تجزیه اسناد ارائه میدهد: از یک فایل یا از یک رشته. برای رسیدن به هدف ابتدا از کلاسهای Nokogiri::HTML برای ایجاد یک شی سند استفاده میکنید و سپس میتوانید با استفاده از روشها و سلکتورهای مختلف، مشابه CSS یا XPath، در سند حرکت کنید. مثال زیر نشان میدهد که چگونه توسعهدهندگان نرمافزار میتوانند با استفاده از دستورات Ruby یک سند را تجزیه و پرسوجو کنند.
چگونه اسناد HTML را در برنامههای روبی تجزیه و پرسوجو کنیم؟
#! /usr/bin/env ruby
require 'nokogiri'
require 'open-uri'
# Fetch and parse HTML document
doc = Nokogiri::HTML(URI.open('https://nokogiri.org/tutorials/installing_nokogiri.html'))
# Search for nodes by css
doc.css('nav ul.menu li a', 'article h2').each do |link|
puts link.content
end
# Search for nodes by xpath
doc.xpath('//nav//ul//li/a', '//article//h2').each do |link|
puts link.content
end
# Or mix and match
doc.search('nav ul.menu li a', '//article//h2').each do |link|
puts link.content
end
تغییر اسناد HTML/XML از طریق روبی
کتابخانه Nokogiri یک دارایی ارزشمند برای هر توسعهدهنده Ruby است که نیاز به کار با اسناد HTML و XML دارد. این کتابخانه کار با بارگذاری و دستکاری اسناد HTML یا XML را با استفاده از کد Ruby برای توسعهدهندگان نرمافزار آسان میکند. این امکان را به توسعهدهندگان میدهد تا اسناد را با افزودن، بهروزرسانی یا حذف عناصر و ویژگیها تغییر دهند. این بهویژه زمانی مفید است که نیاز به دستکاری صفحات وب یا تولید محتوای پویا داشته باشید. مثال زیر نشان میدهد که چگونه توسعهدهندگان نرمافزار میتوانند یک عنصر جدید را به یک سند HTML در برنامههای Ruby اضافه کنند.
چگونه یک عنصر جدید به سند HTML از طریق API روبی اضافه کنیم؟
new_element = Nokogiri::XML::Node.new('p', doc)
new_element.content = 'This is a new paragraph.'
# Add the new element to the document
doc.root.add_child(new_element)
استفاده از XPath و انتخابگرهای CSS از طریق روبی
کتابخانه منبع باز Nokogiri مجموعه گستردهای از متدها را برای جستجوی عناصر خاص درون یک سند فراهم کرده است. این کتابخانه به کاربران اجازه میدهد تا از هر دو انتخابگر XPath و CSS برای پیمایش و انتخاب عناصر در سند تجزیهشده داخل برنامههای Ruby استفاده کنند. این امر استخراج اطلاعات خاص یا دستکاری ساختار سند را آسان میسازد. مثالهای زیر نشان میدهند که چگونه توسعهدهندگان نرمافزار میتوانند به راحتی با استفاده از دستورات Ruby، عناصر را با XPath و همچنین انتخابگر CSS انتخاب کنند.
چگونه عناصر را با استفاده از XPath یا CSS Selector از طریق API روبی انتخاب کنیم؟
new_element = Nokogiri::XML::Node.new('p', doc)
new_element.content = 'This is a new paragraph.'
# Add the new element to the document
doc.root.add_child(new_element)