zoukankan      html  css  js  c++  java
  • python之web业务质量检测

    不知为何,也许我对pycurl模块了解不够透彻的原因吧,测出来的时间与firebug所得不同,但是firebug是对的,这点我肯定

    仍将学习到的代码贴出如下

    #!/usr/local/bin/python3.5
    # -*- coding: utf-8 -*-
    import pycurl
    import time
    import os
    import sys
    
    URL = "http://xxx.xxxx.xxx.xx"
    c = pycurl.Curl()
    c.setopt(pycurl.URL, URL)
    c.setopt(pycurl.CONNECTTIMEOUT, 5)
    c.setopt(pycurl.TIMEOUT, 5)
    c.setopt(pycurl.NOPROGRESS, 1)
    c.setopt(pycurl.FORBID_REUSE, 1)
    c.setopt(pycurl.MAXREDIRS, 1)
    c.setopt(pycurl.DNS_CACHE_TIMEOUT, 30)
    
    indexfile = open(os.path.dirname(os.path.realpath(__file__)) + "/content.txt", "wb")
    c.setopt(pycurl.WRITEHEADER, indexfile)
    c.setopt(pycurl.WRITEDATA, indexfile)
    
    try:
        c.perform()
    except Exception as e:
        print("connection error :" + str(e))
        indexfile.close()
        c.close()
        sys.exit()
    
    NAMELOOKUP_TIME = c.getinfo(c.NAMELOOKUP_TIME)
    CONNECT_TIME = c.getinfo(c.CONNECT_TIME)
    PRETRANSFER_TIME = c.getinfo(c.PRETRANSFER_TIME)
    
    STARTTRANSFER_TIME = c.getinfo(c.STARTTRANSFER_TIME)
    
    TOTAL_TIME = c.getinfo(c.TOTAL_TIME)
    HTTP_CODE = c.getinfo(c.HTTP_CODE)
    SIZE_DOWNLOAD = c.getinfo(c.SIZE_DOWNLOAD)
    HEADER_SIZE = c.getinfo(c.HEADER_SIZE)
    SPEED_DOWNLOAD = c.getinfo(c.SPEED_DOWNLOAD)
    
    print("HTTP状态码:%s" % (HTTP_CODE))
    print("DNS解析时间:%.2f ms" % (NAMELOOKUP_TIME*1000))
    print("建立链接时间:%.2f ms" % (CONNECT_TIME*1000))
    print("准备传输时间:%.2f ms" % (PRETRANSFER_TIME*1000))
    print("传输开始时间:%.2f ms" % (STARTTRANSFER_TIME*1000))
    print("传输结束总时间:%.2f ms" % (TOTAL_TIME*1000))
    print("下载数据包大小:%d bytes/s" % (SIZE_DOWNLOAD))
    print("HTTP头部大小:%d byte" % (HEADER_SIZE))
    print("平均下载速度:%d bytes/s" % (SPEED_DOWNLOAD))
    indexfile.close()
    c.close()

    测的结果

    END!

  • 相关阅读:
    最大化等比例测试演化Demo-传统方法
    Layout-3相关代码:3列布局代码演化三]
    Layout-3相关代码:3列布局代码演化[二]
    Layout-2相关代码:3列布局代码演化[一]
    Layout-1相关代码
    【比赛打分展示双屏管理系统-专业版】Other.ini 配置文件解读以及排行榜界面及专家评语提交展示等具体配置
    Android 开源简单控件
    Android Drawable资源
    Android Service与Thread的区别
    Android事件处理
  • 原文地址:https://www.cnblogs.com/changbo/p/5591961.html
Copyright © 2011-2022 走看看