如何使用WWW :: Mechanize进行分页?

时间:2013-05-08 05:57:10

标签: perl pagination www-mechanize

我在64位计算机上使用Windows Perl 5.16.3。

当我使用具有以下URL的Mechanize时

http://www.utsavfashion.in/indowestern

一切正常。

但是,当我尝试使用分页选项时,即

将最后一个字符串更改为indowestern#pg = 2

我无法获得第二页内容。我仍然从第一页获得内容。

请参阅下面的代码段:

my $url = "http://www.utsavfashion.in/indowestern#pg=2";

$m = WWW::Mechanize->new();
$m->get($url);
print "$url\n";

my $c = $m->content;

print "$c\n";

提前感谢您的建议!

1 个答案:

答案 0 :(得分:1)

Web浏览器甚至不会将#pg=2发送到Web服务器。我不知道WWW :: Mechanize是否有,但它不应该。因此,您获得

的相同页面就不足为奇了
http://www.utsavfashion.in/indowestern

http://www.utsavfashion.in/indowestern#pg=2

不同之处在于提取,它在呈现的中。

当您使用Web浏览器呈现它时,页面中的JavaScript会检查锚点并相应地更新内容。

当您使用print $content进行渲染时,它看起来非常不同。您没有获得格式良好的文本或JavaScript的效果。

在下载的内容中有处理JavaScript的选项。但是如果你是数据挖掘,那么复制JavaScript所做的事情可能会更有效和可靠,因为如果在下载的文档中找不到数据,它可能只是另一个网页请求来获取数据。