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

发布时间 - 2026-01-11 01:56:56    点击率:

本文实例讲述了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 Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

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


# Python  # 多并发  # 访问  # 网站  # python基于gevent实现并发下载器代码实例  # python实现可以断点续传和并发的ftp程序  # Python多进程并发(multiprocessing)用法实例详解  # Python控制多进程与多线程并发数总结  # python实现多线程的方式及多条命令并发执行  # python并发编程之多进程、多线程、异步和协程详解  # python监控网站运行异常并发送邮件的方法  # 实例探究Python以并发方式编写高性能端口扫描器的方法  # Python socket实现的文件下载器功能示例  # python使用urllib模块开发的多线程豆瓣小站mp3下载器  # python 并发下载器实现方法示例  # 操作技巧  # 进阶  # 相关内容  # 感兴趣  # 数据结构  # 给大家  # 更多关于  # 所述  # 程序设计  # 使用技巧  # 编程技巧  # 讲述了  # Process  # def  # minSpan  # url  # SpentTime  # datetime  # time  # num 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  Linux后台任务运行方法_nohup与&使用技巧【技巧】  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  如何用PHP工具快速搭建高效网站?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  网站制作免费,什么网站能看正片电影?  微信小程序 闭包写法详细介绍  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  公司门户网站制作流程,华为官网怎么做?  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  如何在云主机上快速搭建网站?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  5种Android数据存储方式汇总  Python结构化数据采集_字段抽取解析【教程】  微信小程序 五星评分(包括半颗星评分)实例代码  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  使用Dockerfile构建java web环境  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  如何在腾讯云服务器上快速搭建个人网站?  大型企业网站制作流程,做网站需要注册公司吗?  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  如何选择可靠的免备案建站服务器?  Laravel如何实现事件和监听器?(Event & Listener实战)  Laravel如何发送系统通知?(Notification渠道示例)  Bootstrap整体框架之JavaScript插件架构  Laravel如何实现API资源集合?(Resource Collection教程)  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel怎么为数据库表字段添加索引以优化查询  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  javascript基本数据类型及类型检测常用方法小结  Laravel如何使用Service Container和依赖注入?(代码示例)  Laravel中的withCount方法怎么高效统计关联模型数量  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  北京网站制作公司哪家好一点,北京租房网站有哪些?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  深圳网站制作的公司有哪些,dido官方网站?  如何在云指建站中生成FTP站点?  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  如何快速使用云服务器搭建个人网站?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  Python进程池调度策略_任务分发说明【指导】