これは愚かな質問かもしれませんが、私はそれを得ていません。私はあらゆる方法を試しました、多分私はどこかで愚かな間違いをしています。私はまだ解析を学んでいます。あなたの助けが私の知識を向上させるのに役立つはずです。私はauthorlistからforenameとlastnameを抽出したいと思います。私はコードを書こうとしましたが、私が正しいかどうかはわかりません。XML解析に関する簡単な質問
use LWP::Simple;
use XML::Simple;
use Data::Dumper;
open (FH, ">:utf8","xmlparsed1.txt");
my $db1 = "pubmed";
my $q = 16404398;
my $xml = new XML::Simple;
$urlxml = "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=$db1&id=$q&retmode=xml&rettype=abstract";
$dataxml = get($urlxml);
$data = $xml->XMLin("$dataxml", ForceArray => [qw(MeshHeading AuthorList)]);
print FH Dumper($data);
print FH "Authors: ".join '$$', map $_->{LastName},@{$data->{PubmedArticle}->{MedlineCitation}->{Article}->{AuthorList}->[0]->{Author}};
これは私にラストネームを与えますが、「アトゥルJビュート」のようにforenameも必要とします。また、これはそのようなxmlファイルの一般化されたコードなので、[0]は正しいと言えますか?他のXMLファイルの別の位置にある場合はどうなりますか?これを行う他の方法はありますか? ありがとうございます。
(400 - > {FOO} - > {バーが} $データに相当します、悪い要求)私がURLを試してみる – mirod
@mirodあなたの助けに感謝します。しかし、リンクは絶対に正しいです。なぜこのエラーが出るのか分かりません。とにかく、私は以下の解決策を得ました。ご協力ありがとうございました。 – smandape