测试网站页面网速的Python脚本

一、测试网站页面网速脚本

[[email protected] ~]# cat check_url.py
#!/usr/bin/python
# coding: UTF-8
import StringIO,pycurl,sys,os,time

class idctest:
    def __init__(self):
          self.contents = ‘‘
    def body_callback(self,buf):
          self.contents = self.contents + buf

def test_gzip(input_url):
    t = idctest()
    #gzip_test = file("gzip_test.txt", ‘w‘)
    c = pycurl.Curl()
    c.setopt(pycurl.WRITEFUNCTION,t.body_callback)
    c.setopt(pycurl.ENCODING, ‘gzip‘)
    c.setopt(pycurl.URL,input_url)
    c.setopt(pycurl.MAXREDIRS, 5)
    c.perform()

    http_code = c.getinfo(pycurl.HTTP_CODE)
    dns_resolve = c.getinfo(pycurl.NAMELOOKUP_TIME)
    http_conn_time = c.getinfo(pycurl.CONNECT_TIME)
    http_pre_trans = c.getinfo(pycurl.PRETRANSFER_TIME)
    http_start_trans = c.getinfo(pycurl.STARTTRANSFER_TIME)
    http_total_time = c.getinfo(pycurl.TOTAL_TIME)
    http_size_download = c.getinfo(pycurl.SIZE_DOWNLOAD)
    http_header_size = c.getinfo(pycurl.HEADER_SIZE)
    http_speed_downlaod = c.getinfo(pycurl.SPEED_DOWNLOAD)

    print ‘HTTP响应状态: %d‘ %http_code
    print ‘DNS解析时间:%.2f ms‘ %(dns_resolve*1000)
    print ‘建立连接时间: %.2f ms‘ %(http_conn_time*1000)
    print ‘准备传输时间: %.2f ms‘ %(http_pre_trans*1000)
    print "传输开始时间: %.2f ms" %(http_start_trans*1000)
    print "传输结束时间: %.2f ms" %(http_total_time*1000)
    print "下载数据包大小: %d bytes/s" %http_size_download
    print "HTTP头大小: %d bytes/s" %http_header_size
    print "平均下载速度: %d k/s" %(http_speed_downlaod/1024)

if __name__ == ‘__main__‘:
   input_url = sys.argv[1]
   test_gzip(input_url)

#授执行权限并运行脚本

#授执行权限
[[email protected] ~]# chmod +x check_url.py 

#运行脚本
[[email protected] ~]# python check_url.py www.baidu.com
HTTP响应状态: 200
DNS解析时间:41.01 ms
建立连接时间: 62.14 ms
准备传输时间: 62.57 ms
传输开始时间: 120.10 ms
传输结束时间: 126.41 ms
下载数据包大小: 32007 bytes/s
HTTP头大小: 965 bytes/s
平均下载速度: 247 k/s

  

原文地址:https://www.cnblogs.com/nulige/p/9231335.html

时间: 2024-08-28 14:57:09

测试网站页面网速的Python脚本的相关文章

测试网站页面网速的一个简单Python脚本

[[email protected] mnt]# cat pycurl.py #!/usr/bin/python# coding: UTF-8import StringIO,pycurl,sys,os,time class idctest:    def __init__(self):          self.contents = ''    def body_callback(self,buf):          self.contents = self.contents + buf d

linux测网速

下载测网速的python脚本进行测试:  wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py chmod a+x speedtest.py ./speedtest.py

使用Linux命令行测试网速

使用Linux命令行测试网速http://www.linuxde.net/2014/01/15561.html 当发现上网速度变慢时,人们通常会先首先测试自己的电脑到网络服务提供商(通常被称为"最后一公里")的网络连接速度.在可用于测试宽带速度的网站中,Speedtest.net也许是使用最广泛的. Speedtest.net的工作原理并不复杂:它在你的浏览器中加载JavaScript代码并自动检测离你最近的Speedtest.net服务器,然后向服务器发送HTTP GET and P

使用Linux命令行测试网速-----speedtest-cli

当发现上网速度变慢时,人们通常会先首先测试自己的电脑到网络服务提供商(通常被称为“最后一公里”)的网络连接速度.在可用于测试宽带速度的网站中,Speedtest.net也许是使用最广泛的. Speedtest.net的工作原理并不复杂:它在你的浏览器中加载JavaScript代码并自动检测离你最近的Speedtest.net服务器,然后向服务器发送HTTP GET and POST请求来测试上行/下行网速. 但在没有图形化桌面时(例如,当你通过命令行远程登陆服务器或使用没有图形界面的操作系统),

Linux命令行测试网速speedtest.net

当发现上网速度变慢时,人们通常会先首先测试自己的电脑到网络服务提供商(通常被称为“最后一公里”)的网络连接速度.在可用于测试宽带速度的网站中,Speedtest.net也许是使用最广泛的. Speedtest.net的工作原理并不复杂:它在你的浏览器中加载JavaScript代码并自动检测离你最近的Speedtest.net服务器,然后向服务器发送HTTP GET and POST请求来测试上行/下行网速. 但在没有图形化桌面时(例如,当你通过命令行远程登陆服务器或使用没有图形界面的操作系统),

Linux下使用Speedtest测试网速

Speedtest是用来测试网络性能的开源软件,在Linux下面安装Speedtest可以用来测试网络出口的上传和下载速度,帮助排查网络方面导致的故障. Speedtest介绍 由于公司几个项目用户访问的时候响应较慢,项目本身没问题,服务及调用的接口返回信息都比较正常,猜想是网络方面造成的瓶颈,导致用户请求的时候网络响应堵塞,拉长了响应时间. Speedtest.net是比较广泛的用来测试宽带速度的网站,Speedtest.net的工作原理并不复杂:它在你的浏览器中加载JavaScript代码并

测试网站访问速度的5个方法(转)

网页载入速度对于一个网站来讲很关键,Google已经将一个网站的载入速度列入了网站关键字排名的考虑因素当中,也就是说如果你的网站有足够的内容,而且载入速度比别人的网站更快一步的话,那么你就是获得更好的排名.那么下面就赶快测试你的网站,提高网站访问速度吧. 1:用Ping命令简单测网站速度的方法 Ping可以用来检查网络是否通畅或者网络连接速度,点击开始→运行 在运行中输入“cmd”回车或点击确定,输入ping www.你的网址.com 就可以了. (新手只需注意本图红框里的含义即可) Ping结

测试网站访问速度的5个方法

网页载入速度对于一个网站来讲很关键,Google已经将一个网站的载入速度列入了网站关键字排名的考虑因素当中,也就是说如果你的网站有足够的内容,而且载入速度比别人的网站更快一步的话,那么你就是获得更好的排名.那么下面就赶快测试你的网站,提高网站访问速度吧. 1:用Ping命令简单测网站速度的方法 Ping可以用来检查网络是否通畅或者网络连接速度,点击开始→运行 在运行中输入“cmd”回车或点击确定,输入ping www.你的网址.com 就可以了. (新手只需注意本图红框里的含义即可) Ping结

Python实例--C#执行Python脚本,传参

# -*- coding: utf-8 -*- # 第一行的目的,是为了让代码里面,可以有中文注释信息. (否则要运行报错) # 这个 Python 脚本, 用于被 C# 来调用. # 简单测试 Hello World 的效果. def welcome(name): return "hello " + name # 测试 参数为 C# 对象的效果. (获取/设置 C# 对象的属性) def testAddAge(obj): obj.Age = obj.Age + 1 obj.Desc