perl 判断网站内容是否变更
发布时间:2020-12-15 23:42:12 所属栏目:大数据 来源:网络整理
导读:一个 ETag 是另一个HTTP header 功能类似 Last?Modified and If?Modified?Since。而不是日期,它返回一个独特的字符串,根据你的下载的内容。如果字符串改变,你可以假设网站内容是不同的。主要的好处是 Etags 返回即使是动态生成的内容 [root@dr-mysql01 test]
一个 ETag 是另一个HTTP header 功能类似 Last?Modified and If?Modified?Since。 而不是日期,它返回一个独特的字符串,根据你的下载的内容。 如果字符串改变,你可以假设网站内容是不同的。主要的好处是 Etags 返回即使是动态生成的内容 [root@dr-mysql01 test]# cat s9.pl #!/usr/bin/perl ?w use LWP 5.64; my $url = 'http://www.zjcap.cn'; $etag='"55af3d5f-691b"'; my %headers = ( 'If-None-Match'=>$etag ); my $browser = LWP::UserAgent->new; $browser->timeout(10); $browser->env_proxy; $browser->agent("Mozilla/8.0"); my $response = $browser->get($url,%headers); $newtag = $response->header("ETag"); print "ETag from server:".$response->header("ETag")."n"; print "Got:".$response->status_line . "n"; if ( "$etag" eq "$newtag" ){print "not modifiedn";} else{print "modifiedn";}; You have mail in /var/spool/mail/root [root@dr-mysql01 test]# perl s9.pl ETag from server:"55af3d5f-691b" Got:304 Not Modified not modified (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |