#!/usr/bin/perl use strict; use warnings; use LWP::UserAgent; my $base = 'http://www.tcichemicals.com/eshop/en/ap/catalog/coa_result/?page=coa'; my $filename = "test.pdf"; my $params = { product_number => 'E0393', lot_number => 'DY5BB' }; my $agent = LWP::UserAgent->new(ssl_opts => { verify_hostname => 0}); push @{$agent->requests_redirectable}, 'POST'; print "@{$agent->requests_redirectable}". "\n"; my $response = $agent->post("$base", $params); print $response->content; my $response = $agent->post("$base", $params); print $response->content; while (my $wait = $response->header('Retry-After')) { print STDERR "Waiting ($wait)...\n"; sleep $wait; $response = $agent->get($response->base); } die $response->status_line if !$response->is_success; my $file = $response->decoded_content( charset => 'none' ); #my $md5_hex = md5_hex($filename); #print "$md5_hex\n"; #my $save = "$file"; open (SAVE, ">", $filename) || die "open file error"; print SAVE $file; close SAVE;