Python实现多并发访问网站功能示例


Posted in Python onJune 19, 2017

本文实例讲述了Python实现多并发访问网站功能。分享给大家供大家参考,具体如下:

# Filename:visitweb_threads.py
# Description:python visit web, get startTime, endTime, everytimes spentTime,threading
import threading
import urllib
import time
import datetime
print 'num    web       SpentTime'
def Process(url,n):
  minSpan = 0.0
  maxSpan = 0.0
  sumSpan= 0.0
  over1s = 0
  file = open('data.txt','a') # save Data
  for i in range(n):
    startTime =datetime.datetime.now()
    try:
      urlItem = urllib.urlopen(url)
      htmSource = urlItem.read()
      urlItem.close()
    except:
      pass
    endTime = datetime.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'%4d %s Spent:%7s seconds'%(i,url,span))
    file.write(u'%4d %s ST:%s ET:%s Spent :%s seconds\n'%(i,url,startTime,endTime,span))
  file.write('\n')
  print(u'\n requested:%s times\n Total Spent:%s seconds\n avg:%s seconds\n max:%s seconds\n min:%s seconds\n over 1 secnod:%s times\n'%(n,sumSpan,sumSpan/n,maxSpan,minSpan,over1s))
  file.write(u' requested:%s times\n Total Spent:%s seconds\n avg:%s seconds\n max:%s seconds\n min:%s seconds\n over 1 secnod:%s times\n'%(n,sumSpan,sumSpan/n,maxSpan,minSpan,over1s))
  file.close()
class ThreadClass(threading.Thread):
  def run(self):
    now = datetime.datetime.now()
    print "%s says Hello World at time: %s" % (self.getName(), now)
    file = open('threads_data.txt','a') # save threads_data
    file.write( "%s says Hello World at time: %s\n" % (self.getName(), now))
    Process('http://222.20.6.184/main.aspx',10) # visit website 网站的Url和每个进程的访问次数
    now = datetime.datetime.now()
    print "%s says Goodbye at time: %s" % (self.getName(), now)
    file.write( "%s says Goodbye at time: %s\n" % (self.getName(), now))
    file.close()
if __name__=='__main__':
#  file = open('threads_data.txt','w')
#  file.close()
#  file = open('data.txt','w')
#  file.close()
  for i in range(1000): # 多少次同时并发访问
    t = ThreadClass()
    t.start()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中read()、readline()和readlines()三者间的区别和用法
Jul 30 Python
Python虚拟环境项目实例
Nov 20 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
Apr 18 Python
tensorflow实现简单的卷积网络
May 24 Python
Python中几种属性访问的区别与用法详解
Oct 10 Python
Python离线安装PIL 模块的方法
Jan 08 Python
python实现杨氏矩阵查找
Mar 02 Python
对python3.4 字符串转16进制的实例详解
Jun 12 Python
python+selenium 鼠标事件操作方法
Aug 24 Python
wxpython布局的实现方法
Nov 01 Python
python中的split()函数和os.path.split()函数使用详解
Dec 21 Python
python爬虫请求头设置代码
Jul 28 Python
Python sqlite3事务处理方法实例分析
Jun 19 #Python
Python之str操作方法(详解)
Jun 19 #Python
python urllib爬取百度云连接的实例代码
Jun 19 #Python
Python的IDEL增加清屏功能实例
Jun 19 #Python
利用python爬取散文网的文章实例教程
Jun 18 #Python
Python3中简单的文件操作及两个简单小实例分享
Jun 18 #Python
python实现各进制转换的总结大全
Jun 18 #Python
You might like
PHP 实现的将图片转换为TXT
2015/10/21 PHP
Yii2实现自定义独立验证器的方法
2017/05/05 PHP
PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】
2019/06/08 PHP
js form 验证函数 当前比较流行的错误提示
2009/06/23 Javascript
js 页面刷新location.reload和location.replace的区别小结
2009/12/24 Javascript
jQuery基本选择器选择元素使用介绍
2013/04/18 Javascript
jquery中get,post和ajax方法的使用小结
2014/02/04 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
2015/05/28 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
2016/06/24 Javascript
学习Node.js模块机制
2016/10/17 Javascript
jQuery实现的购物车物品数量加减功能代码
2016/11/16 Javascript
JS笛卡尔积算法与多重数组笛卡尔积实现方法示例
2017/12/01 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
深入浅析var,let,const的异同点
2018/08/07 Javascript
layui radio单选限制下一个radio单选的实例
2019/09/03 Javascript
Python操作mongodb数据库进行模糊查询操作示例
2018/06/09 Python
使用memory_profiler监测python代码运行时内存消耗方法
2018/12/03 Python
8种用Python实现线性回归的方法对比详解
2019/07/10 Python
python 实现在shell窗口中编写print不向屏幕输出
2020/02/19 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
深入分析python 排序
2020/08/24 Python
详解使用python爬取抖音app视频(appium可以操控手机)
2021/01/26 Python
使用Python制作一盏 3D 花灯喜迎元宵佳节
2021/02/26 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
网易微博Web App用HTML5开发的过程介绍
2012/06/13 HTML / CSS
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
说出数据连接池的工作机制是什么?
2013/04/19 面试题
Android interview questions
2016/12/25 面试题
机电专业大学生求职信
2013/10/04 职场文书
办公室文员工作自我评价
2013/12/01 职场文书
自我鉴定注意事项
2014/01/19 职场文书
涉密人员保密承诺书
2014/05/28 职场文书
房地产端午节活动方案
2014/08/24 职场文书
党员群众路线自我剖析材料
2014/10/06 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python