如何判断页面何时完成加载(服务器端,而不是JavaScript)

问题描述:

我试图在Ubuntu 16.04实例上运行Google Chrome的无头版本,但是对于我来说知道页面是否在完成之前完全加载完成之前非常重要启动依赖于Chrome的不同脚本。如何判断页面何时完成加载(服务器端,而不是JavaScript)

我已经试过

google-chrome --kiosk --enable-logging --v=1 --log-net-log=/tmp/chrome-net.log --video-threads=6 --no-sandbox --no-experiments --no-default-browser-check --no-pings --no-service-autorun --no-wifi --noerrdialogs --process-per-tab --disable-gpu --no-first-run --disable-java --disable-plugins --disable-translate --disk-cache-size=$((1024 * 1024)) --disk-cache-dir=/tmp/chrome/ --user-data-dir=/tmp/chrome/ --incognito --force-device-scale-factor=1 --window-size=1280,720--window-position=0,0 URL 

铬net.log并没有告诉我很多,同样的调试日志(或我不知道要搜索什么的)

有任何其他方式来查找页面何时完全加载(或至少DOMContentLoaded等效)?

感谢

+1

完全加载意味着即使脚本,图像和其他类型的资源加载? – Perumal

+0

如果可能的话,是的 - 如果不是,至少DOMContentLoaded替代方案也会有用。 – Raul

+0

您是否在寻找替代DOMContentLoaded的JavaScript代码? – Perumal

基于您的评论,我想你想生成从Chrome中的HAR(HTTP Archive)文件用于记录的目的,在这里,你可能想要做的生成HAR文件的步骤:

  1. F12钥匙拉起Developer tools

  2. 点击Network Tab。

  3. 在此选项卡中,有一个Preserve log选项,您需要选择它。检查出this截图。

  4. 一旦被选中,刷新当前页面。有一个如this之一的按钮。红色按钮表示浏览器在当前页面上记录其活动。有时候,您可能会看到一个按钮,这意味着浏览器不记录其活动。但您只需点击它即可开始录制并重新加载页面。

  5. 虽然红色按钮是ON,右键点击任何地方Network标签像this之一,然后单击Save as HAR with Content。然后你会被要求保存文件,你就完成了。

您生成的HAR文件以JSON格式提供。您可以使用JSON工具查看或编辑数据。 JSON Editor是用于查看和编辑JSON数据的流行JSON扩展。

希望它可以帮助你实现你在找什么!

+0

嘿@ Perumal93这是很酷 - 但我'我在这里谈论CLI的东西。没有涉及桌面。而且都必须在后台进行。 – Raul

+0

你的意思是像一个自动化的工作? – Perumal

+0

不为“工作”,我想,让我们说5S铬从CLI启动了一个服务器上的信息亭模式后,得到HAR或类似的,我可以检查已取得的所有请求的东西。请记住,这是所有服务器端。没有VNC,没有鼠标或键盘:) – Raul