blast_parse_0.pl
use Bio::SearchIO;
if (! $ARGV[0])
{
print "What is the BLAST file to parse? ";
chomp ($inFile = <STDIN>);
}
else
{
$inFile = $ARGV[0];
}
$report = new Bio::SearchIO(
-file=>"$inFile",
-format => "blast");
print "QueryAcc\tHitDesc\tHitSignif\tHSP_rank\t\%ID\teValue\tHSP_length\n";
while($result = $report->next_result)
{
while($hit = $result->next_hit)
{
while ($hsp = $hit->next_hsp)
{
print $result->query_accession, "\t";
print $hit->description, "\t";
print $hit->significance, "\t";
print $hsp->rank, "\t";
print $hsp->percent_identity, "\t";
print $hsp->evalue, "\t";
print $hsp->hsp_length, "\n";
}
}
}