• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:LWPでHTMLが取得できないことがある)

LWPでHTMLが取得できない場合の理由とは?

このQ&Aのポイント
  • LWPを使用してHTMLを取得すると、取得可能なサイトと不可能なサイトがあります。
  • yahooのトップページは取得可能ですが、wikipediaは取得できません。
  • 取得できない場合、エラーメッセージが表示されない理由を教えてください。

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

  • ベストアンサー
  • kumoz
  • ベストアンサー率64% (120/185)
回答No.2

wikipedia では、LWP::Simple のアクセスを許可していないのだと思います。 get() の代わりに getprint() を使用すると、次のエラーメッセージが出ます。 $ perl -MLWP::Simple -e "getprint 'http://ja.wikipedia.ogr/';" 403 Forbidden <URL:http://ja.wikipedia.org/> 下記の URL でほぼ同じ問題を取り上げていますのでご覧ください。

参考URL:
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=35645&forum=10&3
takoyaki_b
質問者

お礼

回答ありがとうございます。 参考URLで解決しました。

その他の回答 (2)

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.3
takoyaki_b
質問者

お礼

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

noname#208124
noname#208124
回答No.1

ユーザーエージェントで弾いてるんじゃないですか Googleとかもlibwww-perlの方弾いてます LWP::Simpleのリクエストヘッダはこれで403 Forbiddenとエラーページ返ってきてます GET http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8 HTTP/1.1 TE: deflate,gzip;q=0.3 Connection: TE, close Host: ja.wikipedia.org User-Agent: LWP::Simple/5.814 LWPを使った場合はこれで200 OKでちゃんとコンテンツ返ってきてます GET http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8 HTTP/1.1 TE: deflate,gzip;q=0.3 Connection: TE, close Host: ja.wikipedia.org User-Agent: libwww-perl/5.814

takoyaki_b
質問者

お礼

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

関連するQ&A

専門家に質問してみよう