'content-type' => 'text/html; charset=utf-8', 'content-disposition' => 'attachment;filename=auto_20090318_0610.zip', #### BEGIN { my $old_make_request = WWW::Mechanize->can('_make_request'); no warnings 'redefine'; *WWW::Mechanize::_make_request = sub { my $response = $old_make_request->(@_); my $type = $response->header('Content-Type'); my $dispo = $response->header('Content-Disposition'); $response->header('Content-Type' => 'application/zip') if defined($dispo) && $dispo =~ m{\.zip$} && defined($type) && $type =~ m{^text/}; return $response; }; }