Phantomjs 如何在CasperJS中自动设置视口高度

Phantomjs 如何在CasperJS中自动设置视口高度,phantomjs,casperjs,Phantomjs,Casperjs,我想捕捉多个网页的截图,每个网页都有不同的高度。如何根据页面高度动态设置高度 大概是这样的: casper.viewport(1200,“自动”)默认情况下,PhantomjS浏览器(CasperJS使用)会自动呈现页面的整个高度。在CasperJS中,相应的方法是 casper.capture() 要设置页面的水平宽度,请设置视口大小: var casper = require('casper').create({ viewportSize: {width: 1280, height

我想捕捉多个网页的截图,每个网页都有不同的高度。如何根据页面高度动态设置高度

大概是这样的:
casper.viewport(1200,“自动”)

默认情况下,PhantomjS浏览器(CasperJS使用)会自动呈现页面的整个高度。在CasperJS中,相应的方法是

casper.capture()
要设置页面的水平宽度,请设置视口大小:

var casper = require('casper').create({
    viewportSize: {width: 1280, height: 800}
});
此设置只会影响屏幕截图的宽度高度将尽可能大,以呈现整个页面

例如:

var casper = require('casper').create({   
    verbose: true, 
    logLevel: 'debug',
    pageSettings: {
        userAgent: 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36'
    }
});
casper.options.viewportSize = {width: 1280, height: 1024};

casper.start("http://stackoverflow.com/questions/tagged/phantomjs");
casper.then(function() {
    casper.capture("stackoverflow.png");
});

casper.run();

高3448像素,远远超过选项中设置的1024像素。

可能的重复我想设置宽度固定大小,但不设置高度。在第二个示例中,您定义了固定高度“800”,这不是我需要的。高度应根据页面高度自动设置。很抱歉,我的观点没有第一次传达给您,请查看修改后的答案,希望对您有所帮助。概要:配置中的高度选项将被忽略,屏幕截图将为整页高度。