x $mechanize->find_all_submits()
0 HTML::Form::SubmitInput=HASH(0x7f9fab008238)
'/' => '/'
'class' => 'button'
'name' => 'btnG'
'onmouseout' => 'this.style.background=\'#e3e3e3\';'
'onmouseover' => 'this.style.background=\'#f3600a\';'
'style' => '{width: 80px; font-size: 9pt;}'
'type' => 'submit'
'value' => 'Search Site'
'value_name' => ''
####
% mech-dump /tmp/hypermut.html
GET http://searcher-green.lanl.gov/search
q= (text)
btnG=Search Site (submit)
client=outside_lanl (hidden readonly)
...
site=HIV (hidden readonly)
POST file:///cgi-bin/HYPERMUT/hypermut.cgi (multipart/form-data)
FORMAT=FASTA (option) [IG (IntelliGenetics)|MSF|GDE|*FASTA|PHYLIP (Interleaved)|PHYLIP (Sequential)|SLX|TABLE]
ALIGNMENT= (textarea)
upfile1= (file)
...
...
submit=Run (submit)
= (reset)
####
#!/usr/bin/perl
use warnings;
use strict;
use WWW::Mechanize;
use File::Temp qw/tempfile/;
my $url = "http://www.hiv.lanl.gov/content/sequence/HYPERMUT/hypermut.html";
my $mechanize = WWW::Mechanize->new( autocheck => 1 );
$mechanize->get($url);
my $seqfile = make_test_seqfile();
$mechanize->field( 'upfile1', $seqfile );
my $page = $mechanize->content;
# save the page locally
open my $FH, ">/tmp/hypermut.html";
print {$FH} $page;
close $FH;
warn "saved webpage data to /tmp/hypermut.html\n";
sub make_test_seqfile {
my $testfile = File::Temp->new( UNLINK => 1, SUFFIX => '.fasta' )
or die "File::Temp: $!\n";
warn "opened $testfile";
print {$testfile} << 'END_TESTSEQS';
>HIV1-test.CONS
ATGGGATGTCTTGGGAATCAGCTGCTTATCGCGCTCTTGCTAGTAAGTGCTTTAGAGATTTATTGTGTTC
>HIV1-test.1
ATGGGATGTCTTGGGAATCAGCTGCTTATCGCGCTCTTGCTAGTAAGTGCTTTAGAGATTTATTGTGTTC
>HIV1-test.2
ATGGGATGTCTTGGGAATCAGCTGCTTATCGCGCTCTTGCTAGTAAGTGCTTTAGAGATTTATTGTGTTC
>HIV1-test.3
ATGGGATGTCTTGGGAATCAGCTGCTTATCGCGCTCTTGCTAGTAAGTGCTTTAGAGATTTATTGTGTTC
>HIV1-test.4
ATGGGATGTCTTGGGAATCAGCTGCTTATCGCGCTCTTGCTAGTAAGTGCTTTAGAGATTTATTGTGTTC
>HIV1-test.5
ATGGGATGTCTTGGGAATCAGCTGCTTATCGCGCTCTTGCTAGTAAGTGCTTTAGAGATTTATTGTGTTC
END_TESTSEQS
close $testfile;
return($testfile . '');
}