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 相关文章推荐
django配置连接数据库及原生sql语句的使用方法
Mar 03 Python
解决python3插入mysql时内容带有引号的问题
Mar 02 Python
windows、linux下打包Python3程序详细方法
Mar 17 Python
Django调用支付宝接口代码实例详解
Apr 04 Python
降低python版本的操作方法
Sep 11 Python
Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框
Sep 21 Python
python 实现数据库中数据添加、查询与更新的示例代码
Dec 07 Python
Python Process创建进程的2种方法详解
Jan 25 Python
python 实现IP子网计算
Feb 18 Python
python定义具名元组实例操作
Feb 28 Python
Python一行代码实现自动发邮件功能
May 30 Python
Python学习之时间包使用教程详解
Mar 21 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 如何向 MySQL 发送数据
2006/10/09 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
PHP count_chars()函数讲解
2019/02/14 PHP
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
javascript中的一些注意事项 更新中
2010/12/06 Javascript
推荐40个非常优秀的jQuery插件和教程【系列三】
2011/11/09 Javascript
js屏蔽鼠标键盘(右键/Ctrl+N/Shift+F10/F11/F5刷新/退格键)
2013/01/24 Javascript
js数组如何添加json数据及js数组与json的区别
2015/10/27 Javascript
js将json格式的对象拼接成复杂的url参数方法
2016/05/25 Javascript
基于Vuejs实现购物车功能
2016/08/02 Javascript
JS图片压缩(pc端和移动端都适用)
2017/01/12 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
Webpack打包css后z-index被重新计算的解决方法
2017/06/18 Javascript
three.js 将图片马赛克化的示例代码
2020/07/31 Javascript
vue 函数调用加括号与不加括号的区别
2020/10/29 Javascript
Python简明入门教程
2015/08/04 Python
Python实现读取并保存文件的类
2017/05/11 Python
python实现对任意大小图片均匀切割的示例
2018/12/05 Python
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)
2019/04/18 Python
对PyQt5中的菜单栏和工具栏实例详解
2019/06/20 Python
Python正则表达式急速入门(小结)
2019/12/16 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
2020/01/18 Python
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
美国购买汽车零件网站:Buy Auto Parts
2018/04/02 全球购物
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
Internal修饰符有什么含义
2013/07/10 面试题
《我不是最弱小的》教学反思
2014/02/23 职场文书
银行委托书范本
2014/04/04 职场文书
作文评语大全
2014/04/23 职场文书
2014年党员自我剖析材料
2014/10/07 职场文书
单位作风建设自查报告
2014/10/23 职场文书
2015年服务员工作总结
2015/04/08 职场文书
罗马假日观后感
2015/06/08 职场文书
夏洛特的网观后感
2015/06/15 职场文书
MySQL中int (10) 和 int (11) 的区别
2022/01/22 MySQL