RubyGems, scrAPI インストール手順 - XREA+版

 

RubyGems と scrAPI を XREA+ へインストールする手順です。

XREA+ では一般ユーザの権限で作業する必要があるため、 インストール先はユーザのホームディレクトリの配下です。

インストール終了後、標準ライブラリ (rexml) と追加ライブラリ (scrapi) の両方を使用したプログラムが動作することを確認します。

インストール

環境変数の設定

今後、追加でインストールする Ruby 関連のライブラリのために環境変数を設定します。

XREA+ のシェルにログインすると、デフォルトのシェルとして bash が起動されます。 また、その設定ファイルとして ~/.bashrc や ~/.profile などが読み込まれます (デフォルトでは、これらの設定ファイルは存在しません)。

ここでは、環境変数を ~/.bashrc に設定することにしましょう。

~/.bashrc  update 
export PATH=$PATH:$HOME/bin:$HOME/lib/ruby/gems/1.8/bin
export GEM_HOME=$HOME/lib/ruby/gems/1.8
export RUBYLIB=$HOME/lib/ruby:$HOME/lib/ruby/site_ruby/1.8

後続の作業のために ~/.bashrc を読み込み込んで、環境変数を有効にします。 これは今回限りの作業です。 次回ログインしたときには自動的に読み込まれます。

foo@qux:~> source ~/.bashrc

RubyGems のインストール

XREA+ でのインストールでは、setup.rb のオプションに all --prefix=$HOME を指定することに注意してください。

インストールが完了したことを確認するために gem -v を実行します。

foo@qux:~> cd src
foo@qux:~/src> wget http://rubyforge.org/frs/download.php/16452/rubygems-0.9.1.tgz
foo@qux:~/src> tar xzf rubygems-0.9.1.tgz
foo@qux:~/src> cd rubygems-0.9.1
foo@qux:~/src/rubygems-0.9.1> ruby setup.rb all --prefix=$HOME
foo@qux:~/src/rubygems-0.9.1> gem -v
0.9.1

gem のオプション設定  new 

XREA+ では負荷制限(実行時間、CPU使用率、メモリ制限)に抵触するプロセスを強制終了します。 gem を使用してインストールを行うと、ri documentation と RDoc documentation がインストールされますが、 これらは負荷が高いため強制終了されることが多いです。 幸いにも、これらはインストールしなくても良いので ~/.gemrc でその旨を指示します。

~/.gemrc
gem: --no-ri --no-rdoc

scrAPI のインストール

foo@qux:~> gem install scrapi
Bulk updating Gem source index for: http://gems.rubyforge.org
Install required dependency tidy? [Yn]  y
Successfully installed scrapi-1.2.0
Successfully installed tidy-1.1.2

動作確認

ソースコード

test-scrapi.rb
#!/usr/bin/ruby -Ku

require 'rexml/document'
require 'rubygems'
require 'scrapi'

xml = <<XML
<?xml version="1.0" encoding="UTF-8" ?>
<test>
    <item>rexml  - OK</item>
</test>
XML

html = <<HTML
<html>
<body>
    <a href="http://example.com/">scrapi - OK</a>
</body>
</html>
HTML

scraper = Scraper.define {
    process 'a', :title => :text
    result :title
}

puts REXML::Document.new(xml).elements['test/item'].text
puts scraper.scrape(html)

実行結果

foo@qux:~/tmp> ruby -v
ruby 1.8.5 (2006-08-25) [i686-linux]
foo@qux:~/tmp> chmod 700 test-scrapi.rb
foo@qux:~/tmp> ./test-scrapi.rb
rexml  - OK
scrapi - OK

改版履歴

日付 内容
2007-01-24 環境変数 PATH に $HOME/lib/ruby/gems/1.8/bin を追加(Railsのインストールに備えて) / 「gem のオプション設定」を追記
2007-01-23 初版