1. 製品
  2.   HTML
  3.   Ruby
  4.   Nokogiri
 
  

HTML ファイルの読み取り、書き込み、解析ができる無料 Ruby ライブラリ

HTML と XML ドキュメントを扱うオープンソースの Ruby ライブラリです。Ruby API を通じて HTML ドキュメントの読み取り、書き込み、変更、クエリをサポートします。

ウェブ開発の世界では、HTML および XML ドキュメントの解析と操作は一般的な作業です。Ruby プログラミング言語は、Nokogiri ライブラリを通じてこれらの作業を処理する強力なツールを提供します。Nokogiri は、HTML と XML ドキュメントを解析・操作するエレガントで効率的な方法を提供し、Ruby 開発者のツールボックスに欠かせないツールとなっています。初心者であろうと経験豊富な開発者であろうと、このライブラリは Ruby で構造化ドキュメントを扱うプロセスを簡素化します。

Nokogiri は、Ruby プログラミング言語と libxml2 および libxslt ライブラリ間の橋渡しをする非常に強力なオープンソースの Ruby gem です。これにより、ソフトウェア開発者は HTML と XML の両方のドキュメントを簡単に解析・操作できます。ウェブサイトからデータをスクレイピングしたり、XML ベースの API から情報を抽出したり、ドキュメント構造の変換を行ったりする際に、これらの作業を簡素化します。このライブラリは、XPath 1.0 によるドキュメント検索、XSD スキーマ検証、XML の DOM または SAX パーサ、XSLT 変換、HTML4 および HTML5 などをサポートしています。

Nokogiri は、ドキュメントの読み取り、書き込み、変更、クエリを行うための分かりやすい API を提供しています。このライブラリはドキュメントエンコーディングの完全なサポートを備えており、エンコーディングを正しく扱うためには常に明示的に設定することが推奨されます。その使いやすさ、強力な選択メソッド、効率的な操作機能により、ウェブスクレイピング、XML 処理、HTML パースといったタスクに最適な選択肢となります。ぜひ機能を探求し、Ruby プロジェクトにおける効率的なドキュメント解析と操作の可能性を解き放ってください。

Previous Next

Nokogiri 入門

Nokogiri をインストールする推奨かつ最も簡単な方法は、Ruby の依存関係管理ツールである RubyGems を使用することです。スムーズなインストールのために、以下のコマンドをご利用ください。

RubyGemsx を介して Nokogiri をインストール

$ gem install nokogiri

手動でインストールすることもできます。最新のリリースファイルは GitHub リポジトリから直接ダウンロードしてください。

Ruby API を使用した HTML ドキュメントの解析

オープンソースのNokogiriライブラリは、Rubyアプリケーション内でHTMLおよびXMLドキュメントの読み込みと解析をサポートしています。HTMLとXMLドキュメントの解析は、Nokogiriの機能の基礎です。このライブラリは、ドキュメントを解析する主な方法として、ファイルからまたは文字列からの2つの方法を提供します。目的を達成するために、まずNokogiri::HTMLクラスを使用してドキュメントオブジェクトを作成し、その後CSSやXPathに似たさまざまなメソッドやセレクタを使ってドキュメントを巡回できます。以下の例は、ソフトウェア開発者がRubyコマンドを使用してドキュメントを解析およびクエリできる方法を示しています。

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

Ruby を使用した HTML/XML ドキュメントの変更

Nokogiriライブラリは、HTMLおよびXMLドキュメントを扱う必要があるすべてのRuby開発者にとって貴重な資産です。このライブラリにより、ソフトウェア開発者はRubyコードを使用してHTMLまたはXMLドキュメントを簡単に読み込み、操作できます。要素や属性を追加、更新、削除することでドキュメントを変更できるようにします。これは、ウェブページを操作したり動的コンテンツを生成したりする必要がある場合に特に有用です。以下の例は、ソフトウェア開発者がRubyアプリケーション内でHTMLドキュメントに新しい要素を追加できる方法を示しています。

Ruby API を使用して HTML ドキュメントに新しい要素を追加する方法は?

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)

Ruby で XPath と CSS セレクタを使用する

オープンソースのNokogiriライブラリは、ドキュメント内の特定の要素を検索するための多種多様なメソッドを提供しています。Rubyアプリケーション内で解析されたドキュメントに対して、XPathとCSSセレクタの両方を使用して要素をナビゲートし選択することができます。これにより、特定の情報を抽出したり、ドキュメントの構造を操作したりすることが容易になります。以下の例は、Rubyのコマンドを使用してXPathおよびCSSセレクタで要素を簡単に選択できることを示しています。

Ruby API を使用して XPath または CSS セレクタで要素を選択する方法は?

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)

 日本