One issue that I have with wget (and IIRC curl too) is that when downloading a file from a URL like, "<a href="http://example.com/file.php?id=1234" rel="nofollow">http://example.com/file.php?id=1234</a> it will download the file to 'file.php?id=1234'. This fails because the HTTP headers could specify the filename when returning the data (which wget will ignore) or that URL could be a redirect to the actual URL which contains the filename (but wget blindly uses the first url supplied). I understand that this functionality is probably desired when it comes to wget's mirroring functions (since the src= and href= values won't point to the redirect URL or actual filename) but there is no option to parse out the original file name even if all you are doing is providing a list of URLs to download (not mirror).<p>{edit} To be fair, this is a pain in the ass to do w/ LWP::UserAgent in Perl too:<p><pre><code> sub download_file_callback {
my ($response,$useragent,$h) = @_;
return undef if $response->code >= 300 and $response->code < 400;
my $fname = $response->filename();
$useragent->remove_handler('response_header',owner => 'billy');
return $useragent->get($response->request()->uri(), ':content_file' => $fname);
}
$ua->add_handler( response_header => \&download_file_callback, owner => 'billy');
my $response = $ua->get($url);</code></pre>
a 'maintainer' is a single point of failure.<p>build a community around a project, look at wget's main competitor, curl, for an example:
<a href="http://curl.haxx.se/mail/list.cgi?list=curl-library" rel="nofollow">http://curl.haxx.se/mail/list.cgi?list=curl-library</a>
(299 messages so far in april!)
Strange to read about this here: Micah is a childhood friend of mine.<p>I'd still rather use wget than curl, with its clunky syntax, but most places have curl and not wget, so I'm stuck with it.