Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用类似Python的HTML5导航计时来测量页面速度和网络时间?_Python_Html_Performance_Python Requests - Fatal编程技术网

使用类似Python的HTML5导航计时来测量页面速度和网络时间?

使用类似Python的HTML5导航计时来测量页面速度和网络时间?,python,html,performance,python-requests,Python,Html,Performance,Python Requests,我目前正在开发一个客户机,它应该通过服务器的实际响应时间(以及网络的单独响应时间)来确定服务器的运行状况。我遇到了一个,它给了我基本上所有的指标,我感兴趣的是: 我知道我可以使用Selenium和PhantomJS来解析输出,但出于性能和可伸缩性的原因,我更喜欢解决方案urllib或requests,它将其分解为DNS请求、网络上的时间和服务器响应的实际时间。以@Andre Daniel提供的参考为基础,这段代码通过DNS获取域IP,并打印出经过的时间。然后,它获取一个URL,打印时间,并打印

我目前正在开发一个客户机,它应该通过服务器的实际响应时间(以及网络的单独响应时间)来确定服务器的运行状况。我遇到了一个,它给了我基本上所有的指标,我感兴趣的是:


我知道我可以使用Selenium和PhantomJS来解析输出,但出于性能和可伸缩性的原因,我更喜欢解决方案urllib或requests,它将其分解为DNS请求、网络上的时间和服务器响应的实际时间。

以@Andre Daniel提供的参考为基础,这段代码通过DNS获取域IP,并打印出经过的时间。然后,它获取一个URL,打印时间,并打印删除同一URL的DNS查找时间后经过的时间

来源 输出
为了建立在@Andre Daniel提供的引用基础上,此代码通过DNS获取域IP,并打印所用时间。然后,它获取一个URL,打印时间,并打印删除同一URL的DNS查找时间后经过的时间

来源 输出
首先,忘记所有的
dom
事件,因为你没有解析文档,只是从服务器接收普通字节。当然,正如前面提到的,我只对DNS、网络时间和服务器响应时间感兴趣。开始DNS查找和连接时间。首先,忘记所有的
dom
事件吧,因为你没有解析文档,只是从服务器接收普通字节。当然,正如前面提到的,我只对DNS、网络时间和服务器响应时间感兴趣。开始DNS查找和连接时间。
import socket, time, urllib, urlparse

URL = 'http://example.com/123'

print URL, 'timing:'

urlinfo = urlparse.urlparse(URL)

start = time.time()
ip = socket.gethostbyname( urlinfo.netloc )
dns_tm = time.time()-start
print 'DNS:\t\t{:.3f} seconds'.format( dns_tm )

start = time.time()
_data = urllib.urlopen(URL).read()
load_tm = time.time()-start
print 'load:\t\t{:.3f} seconds'.format( load_tm )
print 'w/o DNS:\t{:.3f} seconds'.format( load_tm-dns_tm )
http://example.com/123 timing:
DNS:        0.054 seconds
load:       0.104 seconds
w/o DNS:    0.050 seconds