#!/usr/bin/perl use strict; use warnings; use Web::Scraper; my $content = do{ local $/; }; my $parser = scraper{ process 'tr', 'elements[]' => scraper{ process 'input[type="checkbox"]', 'Ladung' => '@value'; process 'tt', 'infos[]' => 'TEXT'; }; }; my $result = $parser->scrape( $content ); for my $element ( @{ $result->{elements} } ){ my ($ladung) = $element->{Ladung} =~ m!,(.*?)\)!; my ($scan) = $element->{Ladung} =~ m!FinneganScanNumber%3a%20(\d+)!; my ($massobs,$massexp,$masscalc,$info) = @{ $element->{infos} }[1,2,3,-1]; my ($seq,$mod) = split /\s*\+\s*/, $info; print qq~ Ladung: $ladung FinneScanNumber: $scan Mass Observed: $massobs Mass exp: $massexp Mass calc: $masscalc Sequence: $seq Modification: $mod ~; } __DATA__ 5104 531.27859 1060.54263 1060.54001 0.00263 0 (19) 2.4 1 R.TLLEGEESR.M + di-MetCarboxylation (R)