稲沢市よりお届けしてます。

Perlをはじめとしたプログラミング周りのあれこれについて。Perl界のモブキャラとして暗躍します(謎)。

インストールしたPerlモジュールのパスを指定する

こんばんは、Perl48です。

「アマゾンのゲーム売れ筋ランキングのゲームタイトルデータを引っこ抜きたーい」

ヒーハー言いながらなんとかWeb::Scraperモジュールをインストールした前回の記事


を経て、
動作確認をしようと実行してみました。

ソースはこちら※まちがってますからね(苦笑)


#!/usr/bin/perl -w



use Web::Scraper;
use URI;

# ゲームタイトル部分を gtitle という名前で取るスクレイパーを作成
my $scraper = scraper {
process 'table.zg .productTitle', 'gtitle' => 'TEXT';
};

# amazon.co.jpのTVゲームベストセラーページのURLオブジェクトを、
my $uri = new URI('http://www.amazon.co.jp/gp/bestsellers/videogames');

# 先ほどのスクレイパーに渡す。(スクレイピングされる)
my $res = $scraper->scrape($uri);

print $res->{gtitle}; # 何が出るかな?


しかし、
健闘虚しく「Web::Scraper; なんてないぜ」なエラー

早速グーグル先生に相談・・・

インストールしたモジュールを perl から使うには

どうもインストールしたモジュールちゃんへのパスを指定やる必要があるらしい。

で、パスを追加してみる


#!/usr/bin/perl -w

use lib 'C:/usr/cpan/build/Web-Scraper-0.32-VSDMOU/lib';

use Web::Scraper;
use URI;

# ゲームタイトル部分を gtitle という名前で取るスクレイパーを作成
my $scraper = scraper {
process 'table.zg .productTitle', 'gtitle' => 'TEXT';
};

# amazon.co.jpのTVゲームベストセラーページのURLオブジェクトを、
my $uri = new URI('http://www.amazon.co.jp/gp/bestsellers/videogames');

# 先ほどのスクレイパーに渡す。(スクレイピングされる)
my $res = $scraper->scrape($uri);

print $res->{gtitle}; # 何が出るかな?

すると・・・

動いたー!!

でも文字化けー!!(涙)

ガハハー!
さぁ、次の壁を乗り越えるかー!!

                                                                                              • -

【20100711追記】

PPMを使ったインストールで、Perlモジュールのインストール先を指定できました。