PhantomJS动态查看端口高度

时间:2015-01-19 04:44:34

标签: css height width phantomjs viewport

我有一个关于尝试理解PhantomJS视口行为的简单问题。

page.open("https://www.reddit.com", function (status) {
    page.render("c:\\aaa\\a.jpeg", {format: 'jpeg', quality: '100'});
});

使用此脚本,我没有指定任何视图端口。所以根据文档的默认值是400x300。但它为我生成的图像是:471x4268像素。

这很棒,因为我不需要指定大小,Phantom需要全屏拍摄(即使在常规浏览器中,你得到一个滚动条而且并非所有页面都可见)。

问题是:当我在我的内部网站上使用相同的内容时,Phantom将网站截断为400x300 - 即使常规浏览器显示Reddit和我的内部网站的相同行为,即有一个滚动条,你必须滚动看到整个内容。

这个谜团可能在于使用了CSS - 但有人可以解释这种行为差异吗?

由于我们的内部网站页面都是可变的" height"而且我不知道视口高度,我希望PhantomJS能够为它做的事情" reddit"网站 - 即使网络上的所有示例似乎都表明如果您没有指定视口大小,它会将Reddit网站截断为400x300。

网上有各种各样的黑客,对于某些网站,你告诉phantomjs浏览器向下滚动"查看端口大小"一次拍摄快照,然后将jpegs合并在一起 - 但所有这些都只是愚蠢!如果PhantomJS做了它为#34; Reddit"做的事情将会很好。站点即即使高度非常大,也动态地拍摄整个网页。 4268像素。

以下是将页面截断为300像素高的示例。

page.open("https://groups.google.com/forum/#!overview", function (status) {
    page.render("c:\\aaa\\a.jpeg", {format: 'jpeg', quality: '100'});
});

0 个答案:

没有答案