LWPを使ってHTMLを取得しようとしているのですが、取得可能のサイト、不可能のサイトがあります。
たとえばyahooのトップページは取得できますが、wikipediaは取得できません。取得できない場合、エラーメッセージは出ません。
このようになる理由を教えてください。
よろしくお願いいたします。
環境:windowsXP & ActivePerl、またはwindowsXP & cygwin
コード:
#wikipediaのトップページHTMLを取得する
use LWP::Simple;
$site = get "http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4% …
print $site;
#yahooのトップページHTMLを取得する
use LWP::Simple;
$site = get "http://www.yahoo.co.jp/";
print $site;
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.ph …
No.1
- 回答日時:
ユーザーエージェントで弾いてるんじゃないですか
Googleとかもlibwww-perlの方弾いてます
LWP::Simpleのリクエストヘッダはこれで403 Forbiddenとエラーページ返ってきてます
GET http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4% … 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% … HTTP/1.1
TE: deflate,gzip;q=0.3
Connection: TE, close
Host: ja.wikipedia.org
User-Agent: libwww-perl/5.814
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ノートパソコン 買うならどっちのノートパソコンにしますか? 1 2022/07/15 16:06
- 防犯カメラ・監視カメラ・小型カメラ 屋外用のIPカメラ(ライブカメラ)の位置情報について 1 2022/06/23 18:32
- Windows 10 プロファイルエラーについて 2 2022/12/16 09:31
- WordPress(ワードプレス) 【WordPress/PHP】取得した値(日本語)がエンコードされてしまうのを日本語のまま出力したい 1 2022/08/28 22:59
- CPU・メモリ・マザーボード Dell製ノートパソコンのメモリ増設についてです! 6 2023/06/10 21:31
- iPhone(アイフォーン) こちらWEB検索できるかが分かりません それからこちらの最安値があれば教えてください https:/ 2 2022/09/14 14:09
- デスクトップパソコン パソコンが重くなった 34 2022/06/14 19:41
- タブレット 第10世代 Fire HD 8 △(左向き)、〇、□のマークが表示されない 2 2022/12/18 17:02
- 工学 人間と人口知能の違い 3 2022/05/31 13:34
- その他(プログラミング・Web制作) pythonをjupiter notebookからmecabで頻出の高い単語の抽出について(Runt 1 2022/12/17 18:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
LWP::Simpleでのgetについて
-
ArduinoのジャイロモジュールMP...
-
ユーザー定義関数に#NAME?が返...
-
例外処理のフローチャートの記...
-
Excel VBA 定義されたプロージ...
-
Excel VBAでリンク切れをチェッ...
-
「デバイスは PRN を初期化でき...
-
Excel VBA 『Call』で呼び出す...
-
use lib qw(変数名);は無理?
-
モジュールの最大数はいくつな...
-
現在アクティブなフォーム名を...
-
グラフのX,Y座標を取得したい
-
【vba】フォームに書いてあ...
-
CPANモジュール取得におけるmak...
-
VBAで旧字体を異字体に一括で変...
-
Access VBA標準モジュールにつ...
-
他Book(シートモジュール)のマ...
-
ベースモジュールって?
-
プロシージャの戻り値を取得す...
-
本当にPublicな変数(配列で)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VHDLについてですが何がお...
-
Perl/TkのWWW::MechanizeのGET...
-
LWP::Simpleでのgetについて
-
Perl/TkでURLを既定のブラウザ...
-
LWPでHTMLが取得できないことが...
-
XML::XPathを使う
-
URI.pmの使い方を教えてくださ...
-
Perlでgoogle newsのRSSを取得...
-
mechanizeのタイムアウト処理に...
-
例外処理のフローチャートの記...
-
Excel VBAでリンク切れをチェッ...
-
ユーザー定義関数に#NAME?が返...
-
VBAで別モジュールへの変数の受...
-
"JScript"が見つかりません!
-
VBSがコンパイルエラーになりま...
-
VBでグローバル変数を宣言するには
-
エクセルVBAでシートモジュール...
-
「デバイスは PRN を初期化でき...
-
VBA This Workbookモジュール...
-
モジュールの最大数はいくつな...
おすすめ情報