私はPerlでWebをいじり始めました。私はWindowsとActivePerlを使用しています。私はmp3ファイルをダウンロードするスクリプトを書きました(これはラジオのトークショーのアーカイブであり、疑問に思われるかもしれませんが、すべて合法です:))それは(理論的には)
- Webサイトを解析します
- 配列へのmp3ファイルを指すすべてのリンクを収集します
- アレイを反復処理し、すべてのファイルをダウンロードします
ただし、スクリプトはすべてのリンクを検出し、配列はOKですが、ダウンロードするファイルは1つだけです。基本的なエラーに違いありませんが、見つかりません。私の間違いを指摘してください、ありがとう。
use strict;
use warnings;
use WWW::Mechanize;
use LWP::Simple;
use File::Basename;
my $mech = WWW::Mechanize->new( autocheck => 1 );
$mech->get("http://something_or_other.html");
my @mp3links = $mech->find_all_links(
tag => "a",
url_regex => qr/\.mp3$/,
);
print "\n";
foreach my $link (@mp3links) {
my $url = $link->url();
my $localfile = basename($url);
my $localpath = "d:\\Downloads\\$localfile";
print "$localfile\n";
getstore($url, $localpath);
}