use strict;
use warnings;
use feature 'say';
use Mojo::DOM;
my $html = '';
my $dom = Mojo::DOM->new( $html );
# find each select
foreach my $select ( $dom->find('select')->each ){
say "Found select named $select->{name} with the values/text:";
# process each option
foreach my $opt ( $select->find('option')->each ){
say $opt->{value};
say $opt->text;
}
}
####
Found select named radius with the values/text:
Distance (national)
1
Within 1 mile
5
Within 5 miles
10
Within 10 miles
15
Within 15 miles
20
Within 20 miles
25
Within 25 miles
30
Within 30 miles
35
Within 35 miles
40
Within 40 miles
45
Within 45 miles
50
Within 50 miles
55
Within 55 miles
60
Within 60 miles
70
Within 70 miles
80
Within 80 miles
90
Within 90 miles
100
Within 100 miles
200
Within 200 miles
####
....
Within 200 miles
Found select named derp with the values/text:
foo
bar