MediaWiki API を使用して検索結果を取得しています。最初の結果、「Url」とマークされた XML 要素への URL を取得したいだけです。最終的には、XML でやりたいことが他にもあるでしょうが、これに対する答えを得ることで、自分が間違っていることに気づき、他のことを実行できるようになると思います。これが私が取り組んでいるページです。
require HTTP::Request;
require LWP::UserAgent;
require XML::Simple;
my $url = URI->new("http://en.wikipedia.org/w/api.php?action=opensearch&search=rooney&limit=10&namespace=0&format=xml");
my $request = HTTP::Request->new(GET => $url);
my $ua = LWP::UserAgent->new;
my $response = $ua->request($request);
my $xml = XML::Simple->new();
my $data = $xml->XMLin($response->content);
ここまではすべてうまくいっているようです。私のHTTPリクエストは問題なく通過します(印刷するだけ$response->content
でXMLコンテンツが正常に返され、印刷する$data
と、それがハッシュであると言われます.
「Url」要素を取得しようとして、私が行った検索に基づいて多くのアプローチを試みました。以下のいくつか:
print $data->{'Url'};
print $data->{Url};
print $data{Url}