关于监控网页白屏时间所遇到的问题

之前尝试使用Prometheus的webdriver_exporter 来监控网页白屏时间,但是一直有问题,于是就自己写了一个脚本来监控。
目前了解到的白屏时间 = responseStart - navigationStart
大致代码如下:

from selenium import webdriver
source = "https://www.baidu.com"
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_argument('--no-sandbox')
driver = webdriver.Chrome(chrome_options=chrome_options,executable_path="/usr/local/bin/chromedriver")
driver.get(source)
navigationStart = driver.execute_script("return window.performance.timing.navigationStart")
responseStart = driver.execute_script("return window.performance.timing.responseStart")
domComplete = driver.execute_script("return window.performance.timing.domComplete")
backendPerformance = responseStart - navigationStart
frontendPerformance = domComplete - responseStart
print("Back End:%s" % backendPerformance)
driver.quit()

在使用的过程中,可能还会遇到一个
“selenium.common.exceptions.WebDriverException: Message: unknown error: DevToolsActivePort file doesn't exist” 或者 “The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.”
这两个问题要看下 /opt/google/chrome/google-chrome 的末尾是不是:
exec -a "$0" "$HERE/chrome" "$@"

如果不是的话,请修改为这样的。 that's all

猜你喜欢

转载自blog.51cto.com/13766835/2347546
今日推荐