アプリ版:「スタンプのみでお礼する」機能のリリースについて

LWPライブラリを使ってhtmlソースをダウンロードし
たいのですが、指定したURLを、ブラウザを使って閲
覧できる内容と、異なるhtmlソースがLWPでは取得さ
れてしまい、困っています。
具体的にはSGD(http://www.yeastgenome.org)内の
(http://db.yeastgenome.org/cgi-bin/SGD/locus.pl?
locus=ACE2)で表示される内容の、htmlソースが欲し
いのですが、何故かlocus.plスクリプト自体がダウ
ンロードされてしまいます。IEなどで[名前をつけて
保存]した場合には、希望のhtmlソースが得られるの
ですが...
ソースコードは以下の通りです。
use strict;
use LWP::UserAgent;

&get_entry("ACE2.html");

sub get_entry {
my($outfile_name) = @_;
my $ua = new LWP::UserAgent;
$ua->agent("AgentName/0.1 " . $ua->agent);

my $req = new HTTP::Request
POST => 'http://db.yeastgenome.org/cgi-bin/SGD/locus.pl?l …
$req->content_type('application/x-www-form-urlencoded');
$req->content('started=1&match=www&errors=0&searchstring=CLN3');

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

unless($res->is_success) {
die "Bad luck this time : ";
}
open(F, "> ".$outfile_name) || die "file open error :";
print F $res->content; close(F);
$res->content;
}

A 回答 (1件)

LWPライブラリをよく知らないのですが、


POSTメソッドの時は
POST => 'http://db.yeastgenome.org/cgi-bin/SGD/locus.pl?l …
のような指定ではなくて、別にContent-Length:指定やクエリ指定が必要だったりしませんか?

間違えていたらスイマセン・・・。

参考URL:http://www.harukaze.net/~mishima/perl/cgi_sam1.h …
    • good
    • 0
この回答へのお礼

返信ありがとうございます。
無事解決できました。

お礼日時:2003/06/23 19:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!