「ロリポップ」でRubyの標準ライブラリーにないライブラリを使用する場合

パソコン

RubyでWebスクレイピングするための「nokogiri」というライブラリがない・・・。

「nokogiri」を使用するためには、「open-url」「nokogiri」の2つのライブラリが必要になります。

しかし、「open-url」は標準で使用できるライブラリですが、「nokogiri」はインストールされていません。

しかも、私のロリポップのプランでは、下記のようなインストールができない


$ gem install nokogiri

「nokogiri」で何ができる?

NokogiriでWEBサイトのスクレイピングができます。
スクレイピングとは主にWebサイトからHTMLのデータを取得して、必要な要素を抽出したり、抽出後に要素に対し加工することができる技術です。WEBブラウザを使わなくても、プログラムでHTMLファイルを必要な個所を切り取って、ファイルに保存することができます。

どうするか???どうすれば実装できるか?

下記のように、Webサーバーにライブラリーのソースコードを置けば、ライブラリを使用することが
できるようになります!

nokogiriのソースコードをダウンロードする

公式サイト:http://www.nokogiri.org/

公式サイトから、nokogiriのソースコードをダウンロードします。

下記の手順に従い、ダウンロードします。

Nokogiri

下記のrubygemsサイト経由からも同じソースコードをダウンロードできます。

nokogiri | RubyGems.org | コミュニティのgemホスティングサービス

zipファイルをダウンロードする。

FTPなどでロリポップのサーバーにアップロードする

nokogiri.rbファイルの中身(コーデイング)

実際にrequire ‘nokogiri’でnokogiriが正しく動いているか確認する。

require 'nokogiri'
require 'open-uri'
 
# 対象のURL
url = "https://plaza.rakuten.co.jp/acc/g1025/"

# NokogiriでURLの情報を取得する
contents = Nokogiri::HTML(open(url),nil,"utf-8")
 
# WEBページのタイトルを表示する
puts contents.title

実行結果

実行結果の確認

コメント

タイトルとURLをコピーしました