gpt4 book ai didi

javascript - 如何测量 PhantomJS 中的渲染时间?

转载 作者:行者123 更新时间:2023-11-29 16:53:16 25 4
gpt4 key购买 nike

据我所知,PhantomJS 在调用 page.open 时开始加载页面。首先,它加载页面资源,然后呈现页面,然后调用 open 回调。

现在我只想知道渲染时间(也就是说,没有资源加载时间)。我可以这样做吗?

最佳答案

Phantom js 使用 webkit 引擎..所以它的行为将类似于 chrome。网页呈现在收到第一个资源后立即开始。它不像它会等待所有资源到达。估计渲染时间的一种简单技术是在本地拥有资源,这样网络延迟就会最小。并使用这样的脚本获取加载时间。

t = Date.now();
page.open(address, function(status) {
if (status !== 'success') {
console.log('FAIL to load the address');
} else {
t = Date.now() - t;
console.log('Loading ' + address);
console.log('Loading time ' + t + ' msec');
}
phantom.exit();
});

无论如何,这不会是准确的并且总是可行的。
因此,另一种技术是计算在最后一个资源到达后准备好页面所花费的时间。(不需要进一步的网络请求)。如果某些脚本或资源有问题,这将给出估计。

var  t = Date.now();
page.onResourceReceived = function(response) {
if(Date.now() > t)
{
t = Date.now();
}
};

page.open(address, function(status) {
if (status !== 'success') {
console.log('FAIL to load the address');
}
else
{
t = Date.now() - t;
console.log('Loading ' + address);
console.log('Rendering time' + t + ' msec');
}
phantom.exit();
});

关于javascript - 如何测量 PhantomJS 中的渲染时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34383199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com