所以我使用WWW :: Mechanize来获取页面内容,我想设置一个最大大小。另外,如果达到最大尺寸,我想获得到目前为止已经获得的内容。我知道在LWP中你可以这样做:
my $ua = LWP::UserAgent->new;
$ua->max_size(1024);
$ua->get($url);
现在,即使已经达到了1024个字节,$ua->content
仍将保留在此之前已经获得的可读内容。 WWW :: Mechanize是LWP的子类,所以你可以基本上以完全相同的方式设置它:
my $mech = WWW::Mechanize->new;
$mech->max_size(1024);
$mech->get($url);
然后您会认为,由于WWW :: Mechanize是LWP :: UserAgent的子类,$mech->content
将保留检索到的内容,直到大小达到1024字节。但是,每当我运行它并达到最大大小时,我从WWW :: Mechanize对象获取内容如下:
?|???-???+"?O<?p}?,?ܙmW ?`E??\\ސ???ѧ??U{3???
有谁知道如何让WWW :: Mechanize实际输出像超类LWP :: UserAgent那样的可读内容?我喜欢WWW :: Mechanize提供的一些额外功能,所以我希望能够继续使用它,如果一切可能,而不是为此而必须切换到LWP。谢谢!
答案 0 :(得分:0)
我认为这是$mech->response->decoded_content