perl 用參數傳遞URL地址進行HTML解析

來源:互聯網
上載者:User

  #!C:/perl64/bin/perl
 require LWP::UserAgent;
 
 my $ua = LWP::UserAgent->new;
 $ua->timeout(10);
 $ua->env_proxy;
 
 my ($url_new,$url_old) = @ARGV;
 my $response = $ua->get($url_new);
 die $response->status_line unless ($response->is_success);
# print $response->decoded_content;  # or whatever whole file
my @contents_new = split (/<\/tr>/,$response->decoded_content);
my $eachline = undef;
#$response->decoded_content just one line
#so if dealing with the line ,us split

foreach $eachline (@contents_new){
chomp $eachline;
         
next unless ($eachline =~ /<tr><td align="left">/); #sometime be not so strict
 
if($eachline =~ /html">(.*?)< .*? ">\s?([0-9]+\.[0-9])<\/td> 
.*? >([0-9]+\.[0-9]|n\/a)+< 
.*? >([0-9]+\.[0-9]|n\/a)+<
                     .*? html">(.*?)<
.*? ">(.*?)<\/td> /x)
    {
        printf ("%-145s\t:%-3.1f\t%-3.1f\t%-3.1f\n",$1,$2,$5,$6);
}

}
  print "*********************************\n";
  
=comment  
# my @contents = $response->decoded_content;
# foreach my $content (@contents){
# print $content;
#}
 $response = $ua->get($url_old);
 die $response->status_line unless ($response->is_success);
 print $response->decoded_content;  # or whatever whole file
 #my @contents_new = $response->decoded_content;
 my @contents_old = $response->decoded_content;
 my $eachline1 = undef;
foreach $eachline1 (@contents_old){
print $eachline1."###";
}
 

#use LWP::UserAgent;
#$browser=LWP::UserAgent->new;
#$TARGET_URL="http://search.cpan.org";
#$response=$browser->post($TARGET_URL);
#$htmlcontent=$response->content; 
#print $htmlcontent."\n";

=cut

發郵件功能,發送的郵件用HTML顯示

use Net::SMTP;


my $smtp = Net::SMTP->new($email_server);
$smtp->mail($email_sender);
my @receivers = split (";",$email_receivers);


$smtp->recipient(@receivers);
$smtp->data();
$smtp->datasend("MIME-Version: 1.0\n");
$smtp->datasend("Content-Type: text/html; charset=us-ascii\n");
$smtp->datasend("To: $email_receivers\n");
$smtp->datasend("Subject: STF Change\n");
$smtp->datasend("$result_content\n");
$smtp->quit;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.