热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python写一个网络测速脚本_测试网站页面网速的Python脚本

一、测试网站页面网速脚本[rootsalt~]#catcheck_url.py#!usrbinpython#coding:UTF-8importStringIO,pycur

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

[root@salt ~]# 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)

#授执行权限并运行脚本

#授执行权限

[root@salt ~]# chmod +x check_url.py

#运行脚本

[root@salt ~]# 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



推荐阅读
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • 纠正网上的错误:自定义一个类叫java.lang.System/String的方法
    本文纠正了网上关于自定义一个类叫java.lang.System/String的错误答案,并详细解释了为什么这种方法是错误的。作者指出,虽然双亲委托机制确实可以阻止自定义的System类被加载,但通过自定义一个特殊的类加载器,可以绕过双亲委托机制,达到自定义System类的目的。作者呼吁读者对网上的内容持怀疑态度,并带着问题来阅读文章。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • 本文介绍了UVALive6575题目Odd and Even Zeroes的解法,使用了数位dp和找规律的方法。阶乘的定义和性质被介绍,并给出了一些例子。其中,部分阶乘的尾零个数为奇数,部分为偶数。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • springmvc学习笔记(十):控制器业务方法中通过注解实现封装Javabean接收表单提交的数据
    本文介绍了在springmvc学习笔记系列的第十篇中,控制器的业务方法中如何通过注解实现封装Javabean来接收表单提交的数据。同时还讨论了当有多个注册表单且字段完全相同时,如何将其交给同一个控制器处理。 ... [详细]
  • 猜字母游戏
    猜字母游戏猜字母游戏——设计数据结构猜字母游戏——设计程序结构猜字母游戏——实现字母生成方法猜字母游戏——实现字母检测方法猜字母游戏——实现主方法1猜字母游戏——设计数据结构1.1 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • Ihavethefollowingonhtml我在html上有以下内容<html><head><scriptsrc..3003_Tes ... [详细]
  • 图像因存在错误而无法显示 ... [详细]
author-avatar
mobiledu2502854827
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有