我想通过 PHP 计算网页的完整下载时间。
它可以使用 CURL,但它唯一计算 HTML 源的下载时间,所以它不可能计算页面上的所有元素,如 JS、图像等!
我想编写类似 hyperspin 的程序,有什么方法可以像 webbrowser 一样工作吗?我的意思是像 YSlow 或 hyperspin 这样的东西。
你可以看看PhantomJS (headless WebKit)
var page = require('webpage').create(),
t = Date.now();
page.open('http://twitter.com/marcelduran', function (status) {
t = Date.now() - t;
console.log(t + 'ms');
phantom.exit();
});
我通过发送 cURL 请求、下载第一个字节、计算所用时间然后将其乘以要下载的总字节数来完成此操作(非常准确)。
至于 JS 和图像,你真的只需要为此创建一个库(或者可能已经有一个可用的库)