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

wikipediaのAPIを取り込みたいと思っています。
以下のURLをIE6から叩けば、「東京ドーム」に関するwikipediaの情報がxmlの形式で表示されるのですが、
http://ja.wikipedia.org/wiki/%E7%89%B9%E5%88%A5: …

これを、
use LWP::Simple;
$url = "http://ja.wikipedia.org/wiki/%E7%89%B9%E5%88%A5: …
$res = get($url);
print $res;
exit;
としても、取得できません。
どなたか、このwikipediaのURLから情報をperlで取得する方法を教えていただけませんか。お願いします。
#なお、perl初心者です。
#サンプルコードを試行錯誤で書き換えしながら先に進むタイプです。

ちなみに、SimpleAPI(http://wikipedia.simpleapi.net/)による「東京ドーム」の取得は出来るのですが、
#上記コードの$urlを"http://wikipedia.simpleapi.net/api?keyword=%E6%9 …にする。
この場合、ダイジェスト文だけで全文は取得できません。
無謀かもしれませんが、全文を取得したく、前者のURLからの取得を望んでいます。

どうかよろしくお願いします。

A 回答 (2件)

lwp は単純にhttpの通信をするだけですから、xmlの解析には、XML::Parser、XML::Simpleを使いましょう。

    • good
    • 0

use LWP::Simple qw(get $ua);


$url = "http://ja.wikipedia.org/wiki/%E7%89%B9%E5%88%A5: …

$ua->agent("Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");

$res = get($url);
print $res;
exit;
    • good
    • 0
この回答へのお礼

ありがとうございます!
取得できました。

ただ、$resは、各要素の内容を並べただけの単なる文字列になるようです。
#xmlの各要素の情報が得られないようです。

<title>タグや、<text>タグの情報だけ抽出したいのですが、xml情報を保ったまま取得するのは無理でしょうか?

#ちなみに、質問文の2つめのURLは、「東京ドーム」のwikipedia APIのつもりでしたが、間違って「ナスカの地上絵」のものをペーストしてしまったみたいです。紛らわしくてすみません。

お礼日時:2007/03/21 22:57

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