##
PSTP = {
'team' => 'team',
'team' => 'team',
'team' => 'team'
};
####
#!/usr/bin/perl
use strict;
use warnings;
use Mojo::UserAgent;
use Mojo::Util qw(dumper trim);
use CGI;
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);
print "Content-type: text/html\n\n";
my $cgi = CGI->new;
my $url = 'https://int.soccerway.com/matches/2020/12/28/';
my $ua = Mojo::UserAgent->new;
my @results = $ua
->get( $url )
->result
->dom
->find( 'table.matches_new tr.match' )
->map( sub {
my $row = $_;
my @results =
map { trim( $row->at( $_ )->all_text ) }
qw( td.minute td.team-a td.score-time td.team-b );
return \@results;
} )
->to_array;
print dumper( @results );
####
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use HTML::TableExtract;
use LWP::UserAgent;
my $cgi = CGI->new;
my $ua = LWP::UserAgent->new;
my $req = HTTP::Request->new(GET => "https://int.soccerway.com/matches/2020/12/28/");
my $res = $ua->request($req);
my $html = $res->decoded_content;
$html =~ s///gs;
$html =~ s///gs;
$html =~ s/]*class="events-button button first-occur")[^>]*>//gs;
my $table = HTML::TableExtract->new();
$table->parse($html);
my $input = $cgi->param("team");
my $response ='';
print "Content-type: text/html\n\n";
foreach my $row ($table->rows) {
my $output = join("", @$row);
$output =~ s/\R//g;
print $output;
if ($input) {
# Find matching team (Its a must to find team after word FT)
if ($output =~ m/$input/) {
# After that team the next is score (Gets team scores - left side)
# Or after scores what team is near (Gets team scores - Right side)
my $score = $output =~ /$input\s*?(\S+)/;
$response ="Found Team And Score is: $score";
}
else {
$response ="Can't find team";
}
}
}
print <
Test
$response
EOF