• ベストアンサー

perlのLWPがページによって、正常に作動しません?

下記コードを書いたのですが、ページのソースを取得することができません。 どのように変えれば、取得することができますでしょうか? 因みに、URL部分を、 http://www.amazon.co.jp/gp/product/B000H9I0F6 とした場合は正常に取得できました。 お分かりになる方、何卒、宜しくお願い致します。 #!/usr/bin/perl print "Content-Type: text/plain\n\n"; use LWP; use HTTP::Cookies; $url="http://www.amazon.co.jp/gp/product/B000GPEXX4"; $file="cookies.txt"; $browser = LWP::UserAgent->new; $browser->cookie_jar({file =>$file, autosave=>1 }); $response = $browser->get($url); print $response->{_content}; exit;

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

両方のURIを試してみましたが、私の場合どちらでも取得できました。 ので何故できないのかわからないのですが、以下のことを試すと原因がわかるかもしれません。一般的な話になっていますが… ・use strict; を入れる。 ・use warnings; を入れる。 ・エラーハンドリングをする。例えば$browser->get($url)をしたあとのコードを以下の様にする。 if ($response->is_error) { print $response->error_as_HTML; } else { print $response->content; }

mai_540903
質問者

お礼

回答いただきありがとうございます。 本日、同一のプログラムで動作をしたところ、取得できました。 また、原因追求の方法教えていただき、ありがとうございます!!

関連するQ&A