gpt4 book ai didi

javascript - 通过PhantomJs获取页面总大小

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

我正在使用 phantomjs(命令行界面)获取 HAR 数据,为此我正在使用 netsniff.js,使用如下命令:

phantomjs netsniff.js YourURL > out.har

然而,这在输出文件 (out.har) 中为我提供了正确的 HAR 数据并使用该 HAR 数据计算页面大小,这是我从 "log > entries > response > bodySize" 获得的,它存在于 "out.har" 中,并且我在计算后得到的总大小与我在浏览器和网络事件中运行 URL 时得到的大小不匹配,在它显示的底部执行检查元素后(333kb 传输)。

而且在 HAR 数据中我没有得到 "Content-Length" 我认为如果文件有状态 (304 未修改)正确吗??
如果不是如何获得正确的页面大小??。

最佳答案

我没有使用 netsniff.js,但我有一些建议:

  1. 尝试使用 page.clearMemoryCache();

    禁用缓存
  2. phantomjs 仍然存在关于bodySize 的错误,所以我同时使用它们

> function getRealSize(response) {>     var tmp, size;>     for(var i=0; i<response.headers.length; i++) {>         tmp = response.headers[i];>         if(tmp.name == 'Content-Length') {>             return parseInt(tmp.value, 10);>         }>     } > }> size = getRealSize(response) || response.bodySize;
  1. Content-Length 无法在 gzip 中获取,因此禁用 gzip:
> page.customHeaders = {>     'Accept-Encoding': 'gzip;q=0'> };

(事实上,bodySize 永远不应该使用,但我没有测试所有情况)

它对我有用。

关于javascript - 通过PhantomJs获取页面总大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22458396/

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