我写了一个脚本,用LWP :: RobotUA检查我自己的网站。我想避免频繁请求我的robots.txt。
LWP :: RobotUA的规则参数应该允许我指定那些,但是我不知道应该为“允许所有页面”传递什么。
my $ua = LWP::RobotUA->new(agent=>'my-robot/0.1', from=>'me@foo.com', rules=> ??? );
答案 0 :(得分:1)
LWP :: RobotUA是LWP :: UserAgent,添加了robots.txt
支持。如果您不想请求robots.txt
,那么只需使用LWP :: UserAgent。
或者,子类LWP :: RobotUA并覆盖simple_request
方法并删除robots.txt
和规则处理。
答案 1 :(得分:0)
经过更多的研究,我认为提供机器人规则的目的是通过子类化WWW :: RobotRules。
{
package WWW::NoRules;
use vars qw(@ISA);
use WWW::RobotRules;
@ISA = qw(WWW::RobotRules::InCore);
sub allowed {
return 1;
}
}
my $ua = LWP::RobotUA->new(agent=>'my-robot/0.1', from=>'me@foo.com', rules=>WWW::NoRules->new);