• 技术文章 >Python技术 >Python爬虫

    利用Python对网站进行测速

    PythonPython2019-06-20 10:27:13原创5157
    利用python可以编写的用于测试网站访问速率的代码,实现原理是输出打开某url的时间,并计算出访问100次的平均时间,时间和最小时间等等。根据时间的变化判断网站速度。

    完整代码:

    import urllib2
    from datetime import *
    import time
    def Process(url,n):
      minSpan = 10.0
      maxSpan = 0.0
      sumSpan= 0.0
      over1s = 0
      for i in range(n):
        startTime = datetime.now()
        try:
          res = urllib2.urlopen(url,timeout=10)
        except:
          pass
        endTime = datetime.now()
        span = (endTime-startTime).total_seconds()
        sumSpan = sumSpan + span
        if span < minSpan:
          minSpan = span
        if span > maxSpan:
          maxSpan = span
        #超过一秒的
        if span>1:
          over1s=over1s + 1
        print(u'%s Spent :%s seconds'%(url,span))
      print(u'requested:%s times,Total Spent:%s seconds,avg:%s seconds, max:%s seconds,min:%s seconds,over 1 secnod:%s times'%(n,sumSpan,sumSpan/n,maxSpan,minSpan,over1s))
      print('\n')
    if __name__=='__main__':
      Process('http://www.baidu.com',100)

    运行结果如下:

    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.094 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.015 seconds
    http://www.baidu.com Spent :0.015 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.046 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.094 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.109 seconds
    http://www.baidu.com Spent :0.094 seconds
    http://www.baidu.com Spent :0.094 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.062 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.047 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.015 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.047 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.015 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.016 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.015 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.078 seconds
    http://www.baidu.com Spent :0.109 seconds
    http://www.baidu.com Spent :0.015 seconds
    http://www.baidu.com Spent :0.094 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.109 seconds
    http://www.baidu.com Spent :0.094 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.047 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.032 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    http://www.baidu.com Spent :0.031 seconds
    requested:100 times,Total Spent:3.67 seconds,avg:0.0367 seconds, max:0.109 seconds,min:0.015 seconds,over 1 secnod:0 times
    专题推荐:python
    上一篇:urllib2能处理post请求吗 下一篇:Python中的opener()方法是什么

    相关文章推荐

    • Python中的zfill()有什么用?• 利用Python的Matplotlib库进行数据可视化• 怎么通过Python获取文件指定行的内容?• Python的监控功能示例

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网