ようやくWindows環境にNokogiri(Ruby用のHTMLパーサー)を導入することができたので,その手順についてメモしておきます。

 Nokogiriのインストールマニュアルを読むと,Windows環境ではgemを使ってストレートにインストールできると書かれています。

gem install nokogiri

 Nokogiriはネイティブライブラリを使っていますが,コンパイル済のバイナリをgemパッケージに同梱しているため,それらがそのまま使用され,インストールは問題なく済む・・・はずなのですが,どうしても「ネイティブライブラリを作成できない」というエラーでインストールができないという事態に陥る場合があります。

使用しているRubyのチェック

 Rubyの公式サイトで配布されているWindows用Rubyインタプリタは,大きく分けて次の二つです。

 Nokogiriのgemパッケージに同梱されているバイナリはmingw32用であるため,RubyInstallerでmingw32版のRubyをインストールする必要があります。
 mswin32版をインストールしている場合は,そのままではNokogiriを使うことができないため,mingw32版で置き換えるか,新たにmingw32版をインストールしなければなりません。

Ruby 2.3の場合

 この記事を書いている時点では,Ruby 2.3が最新のバージョンとなっています。
 一方,Nokogiriは,gem経由で取ってくることのできるパッケージではRuby 2.3にインストールすることができず,Ruby 2.2までしかサポートしていません。
 そのため,Nokogiriのgemパッケージが公開されているページで開発中のバージョン(記事執筆時では1.6.8rc3)をダウンロードして,それを直接にインストールする必要があります。
 32ビット版(x86)と64ビット版(x64)があるので,インストールしたRubyに合わせたパッケージをダウンロードしておきます。
(余談ですが,64ビット版でもビルド環境はmingw32になります。)

 Nokogiriをインストールする前に,依存関係にあるパッケージをインストールしておく必要があります。

gem install pkg-config
gem install mini_portile2

 これらのパッケージを導入してから,ダウンロードしたgemパッケージをインストールします。

gem install nokogiri -l (gemパッケージのパス)

Ruby 2.2の場合

 Ruby 2.2の場合は,正式にサポートされているようなので,gemを使えばそのままインストールすることができます。

gem install nokogiri

 Ruby 2.3は新機能をいくつも備えているので,魅力的な選択肢です。
 安定性を取るか,新機能を取るか,うまく選ぶ必要がありますね。