Thread HTML file nach infos duchsuchen od. parsen??
(22 answers)
Opened by Gast at 2007-10-23 03:13
hi;
Ich habe s getestet mit Scraper aber es entsprach nicht meine erwartung, deswegen bin ich bei HTML::TreeBuilder geblieben; das Code sieht so aus: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 #!/usr/bin/perl use strict; use warnings; use HTML::TreeBuilder; my $tree = HTML::TreeBuilder->new; $tree->parse_file('C:/Documents and Settings/Mittler/Desktop/test2.htm'); my @table_rows = $tree->look_down( '_tag' => 'tr', sub { $_[0]->look_down ( '_tag' => 'input') }, sub { $_[0]->look_down( '_tag' => 'tt', sub { $_[0]->as_text =~ /Met/i }) }); foreach my $table_row (@table_rows) { my($input_field) = $table_row->look_down('_tag' => 'input'); my ($ladung) = $input_field->attr('value') =~ m!,(.*?)\)!; my ($scan) = $input_field->attr('value') =~ m!FinneganScanNumber%3a%20(\d+)!; #print $input_field->attr('value'), "\n"; print "ladung = $ladung\n" ; print "scanNumber = $scan \n" ; ############################################ ############################################ my @array; my @input_text =($table_row->look_down('_tag' => 'tt')) ; foreach my $test(@input_text){ my $text = $test->as_text; #print $test; push(@array, split(/' '/,$text)); #print "$text"; #print "$array[1,2,3,9]\n"; } my ($massobs,$massexp,$masscalc,$info) = @{array}[1,2,3,-1]; my ($seq,$mod) = split /\s*\+\s*/, $info; #print $array[1,2,3,-1],"\n"; #print"@array\n"; print qq~ Mass Observed: $massobs Mass exp: $massexp Mass calc: $masscalc Sequence: $seq Modification: $mod ~; print"================================\n"; } mein nächste Ziel wäre die Variablen 'Mass Observed Mas.. usw. direkt in ein Excel datei auszugeben; hast du da eine Idee??Module??ich forsche auch nach; gruss |