nanocv
nanocv

Reputation: 2229

Display LWP::UserAgent download progress

I'm downloading a large file directly to a file with Perl using LWP::UserAgent and the :content_file option.

This is a simplified example of my code:

require LWP::UserAgent;

my $ua = LWP::UserAgent->new;
$ua->timeout(3600);
$ua->env_proxy;

my $response = $ua->get(
    'http://example.com/largefile.xml',
    :content_file   => 'path/to/file/largefile.xml'
);

if ($response->is_success) {
    print "File downloaded\n";
}
else {
    die $response->status_line;
}

Is there any way to display the percentage of the download status? (or something similiar to wget output)

10% [===>                                  ]  65.120.154  527K/s 

Upvotes: 9

Views: 1756

Answers (2)

Chankey Pathak
Chankey Pathak

Reputation: 21666

Dave has already answered your question but I would like to suggest below 2 modules.

Upvotes: 3

Dave Cross
Dave Cross

Reputation: 69224

From the documentation for the module.

$ua->show_progress

$ua->show_progress( $boolean )

Get/set a value indicating whether a progress bar should be displayed on the terminal as requests are processed. The default is FALSE.

Upvotes: 10

Related Questions