Perl の 「LWP::UserAgent」モジュール についての質問です。よろしくお願いします。


$search = "http://www.sogo-unicom.co.jp/data/book/0520030101/index.html";
my $request = GET( $search );
my $ua = LWP::UserAgent->new();
my $res = $ua->request($request);
my $http = $res->as_string;

を実行すると、$http に

HTTP/1.1200OK
Connection:close
Date:Fri,23Feb200701:21:35GMT
Server:Apache/1.3.27(Unix)PHP/4.3.1
Content-Type:text/html
Content-Type:text/html;CHARSET=x-sjis
Client-Date:Fri,23Feb200701:15:00GMT
Client-Peer:125.100.64.159:80
Client-Response-Num:1
Client-Transfer-Encoding:chunked
Title:改訂新版温浴・スパ施設の開発計画・運営実態資料集
X-Meta-Description:
X-Meta-Keywords:温浴施設事業,経営実態調査…
X-Meta-ROBOTS:all

の後に「http://www.sogo-unicom.co.jp/data/book/0520030101/index.html」の
HTMLソースがついてきます。

ここでHTMLソースをつけずに、ただ X-Meta-Description: や X-Meta-Keywords: だけが
欲しい場合などはどうすればいいのでしょうか?

どなたか、よろしくお願いします。

Perl Version: 5.8.8
LWP Version: 5.805
WindowsXP上でApache2.2を利用しています。

回答の条件
  • URL必須
  • 1人20回まで
  • 登録:2007/02/23 10:28:21
  • 終了:2007/02/26 10:23:47

ベストアンサー

id:b-wind No.1

b-wind回答回数3344ベストアンサー獲得回数4402007/02/23 10:45:09

ポイント27pt

ちょっとややこしくて、まず $ua->request で返ってくるのはHTTP::Responce

LWP::UserAgent - WWW ユーザ・エージェント クラス

でこれは HTTP::Message のサブクラスです。

HTTP::Response - HTTPレスポンスをカプセル化するク

id:zachouR

回答ありがとうございます。

難しそうですが、がんばってみます。

さっそく

my $res = $ua->request($request);

my $http_header = $res->headers_as_string;

を使ってみます。ありがとうございます。

2007/02/23 11:10:27

その他の回答(2件)

id:b-wind No.1

b-wind回答回数3344ベストアンサー獲得回数4402007/02/23 10:45:09ここでベストアンサー

ポイント27pt

ちょっとややこしくて、まず $ua->request で返ってくるのはHTTP::Responce

LWP::UserAgent - WWW ユーザ・エージェント クラス

でこれは HTTP::Message のサブクラスです。

HTTP::Response - HTTPレスポンスをカプセル化するク

id:zachouR

回答ありがとうございます。

難しそうですが、がんばってみます。

さっそく

my $res = $ua->request($request);

my $http_header = $res->headers_as_string;

を使ってみます。ありがとうございます。

2007/02/23 11:10:27
id:kidd-number5 No.2

kidd-number5回答回数117ベストアンサー獲得回数152007/02/23 11:04:37

ポイント27pt
  1. $res->as_stringではなくて$res->header('X-Meta-Description')等で個別に取り出す
  2. そもそもGETでの取得をやめてHEADで取り出す

がよいと思います。

取得した結果を表示する関数群はこちらをご覧ください。

http://search.cpan.org/~gaas/libwww-perl-5.805/lib/HTTP/Response...

id:zachouR

回答ありがとうございます。

HEADでの利用も考えてやってみたいと思います。

$res->header('X-Meta-Description')

を組み込んでみたいとおもいます!

2007/02/23 11:13:46
id:finalanswer9999 No.3

finalanswer9999回答回数1ベストアンサー獲得回数02007/02/23 11:13:25

ポイント26pt

use LWP::UserAgent;

my $search = "http://www.sogo-unicom.co.jp/data/book/0520030101/index.html";

my $request = HTTP::Request->new('GET', $search);

my $ua = LWP::UserAgent->new();

my $res = $ua->request($request);

my $http = $res->headers_as_string;

print $http;

id:zachouR

ありがとうございます、参考にさせていただきます。

2007/02/23 15:59:58

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません