Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能


Posted in Python onJanuary 11, 2018

本文实例讲述了Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能。分享给大家供大家参考,具体如下:

#coding=utf8
'''
random.randint(a, b):用于生成一个指定范围内的整数。
其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b
random.choice(sequence):从序列中获取一个随机元素
参数sequence表示一个有序类型(列表,元组,字符串)
'''
import httplib,json
import time
import threading
from random import randint,choice
#创建请求函数
def postRequest(threadNum):
  postJson={
        }
  #定义需要进行发送的数据
  postData=json.dumps(postJson)
  #定义一些文件头
  headerdata = {
    "content-type":"application/json",
     }
  #接口
  requrl ="/v1/query"
  #请求服务,例如:www.baidu.com
  hostServer=""
  #连接服务器
  conn = httplib.HTTPConnection(hostServer)
  #发送请求
  conn.request(method="POST",url=requrl,body=postData,headers=headerdata)
  #获取请求响应
  response=conn.getresponse()
  #打印请求状态
  if response.status in range(200,300):
    print u"线程"+str(threadNum)+u"状态码:"+str(response.status)
  conn.close()
def run(threadNum,internTime,duration):
  #创建数组存放线程
  threads=[]
  try:
    #创建线程
    for i in range(1,threadNum):
      #针对函数创建线程
      t=threading.Thread(target=postRequest,args=(i,))
      #把创建的线程加入线程组
      threads.append(t)
  except Exception,e:
    print e
  try:
    #启动线程
    for thread in threads:
        thread.setDaemon(True)
        thread.start()
        time.sleep(internTime)
    #等待所有线程结束
    for thread in threads:
        thread.join(duration)
  except Exception,e:
      print e
if __name__ == '__main__':
  startime=time.strftime("%Y%m%d%H%M%S")
  now=time.strftime("%Y%m%d%H%M%S")
  duratiion=raw_input(u"输入持续运行时间:")
  while (startime+str(duratiion))!=now:
    run(10,1,int(duratiion))
    now=time.strftime("%Y%m%d%H%M%S")

运行结果:

Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

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

Python 相关文章推荐
使用python实现拉钩网上的FizzBuzzWhizz问题示例
May 05 Python
python动态性强类型用法实例
May 09 Python
将Emacs打造成强大的Python代码编辑工具
Nov 20 Python
Python 爬虫的工具列表大全
Jan 31 Python
关于Python中Inf与Nan的判断问题详解
Feb 08 Python
Python实现的下载网页源码功能示例
Jun 13 Python
python腾讯语音合成实现过程解析
Aug 01 Python
python 字典的打印实现
Sep 26 Python
pytorch实现建立自己的数据集(以mnist为例)
Jan 18 Python
python+selenium定时爬取丁香园的新型冠状病毒数据并制作出类似的地图(部署到云服务器)
Feb 09 Python
python mysql 字段与关键字冲突的解决方式
Mar 02 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
May 22 Python
Python基于ThreadingTCPServer创建多线程代理的方法示例
Jan 11 #Python
python实现员工管理系统
Jan 11 #Python
Python使用base64模块进行二进制数据编码详解
Jan 11 #Python
Python实现备份MySQL数据库的方法示例
Jan 11 #Python
教你用Python写安卓游戏外挂
Jan 11 #Python
python实现学生管理系统
Jan 11 #Python
linecache模块加载和缓存文件内容详解
Jan 11 #Python
You might like
一个可查询所有表的“通用”查询分页类
2006/10/09 PHP
用mysql触发器自动更新memcache的实现代码
2009/10/11 PHP
php设计模式 Singleton(单例模式)
2011/06/26 PHP
PHP函数preg_match_all正则表达式的基本使用详细解析
2013/08/31 PHP
PHP制作3D扇形统计图以及对图片进行缩放操作实例
2014/10/23 PHP
Yii中的cookie的发送和读取
2016/07/27 PHP
php支付宝系列之电脑网站支付
2018/05/30 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
2020/07/10 PHP
详解使用php-cs-fixer格式化代码
2020/09/16 PHP
JQuery自适应IFrame高度(支持嵌套 兼容IE,ff,safafi,chrome)
2011/03/28 Javascript
jQery使网页在显示器上居中显示适用于任何分辨率
2014/06/09 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
2015/06/19 Javascript
jQuery寻找n以内完全数的方法
2015/06/24 Javascript
浅谈js继承的实现及公有、私有、静态方法的书写
2016/10/28 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
Nodejs 复制文件/文件夹的方法
2017/08/24 NodeJs
浅谈在koa2中实现页面渲染的全局数据
2017/10/09 Javascript
浅析为什么a=&quot;abc&quot; 不等于 a=new String(&quot;abc&quot;)
2017/10/25 Javascript
turn.js异步加载实现翻书效果
2019/07/25 Javascript
谈谈JavaScript中的垃圾回收机制
2020/09/17 Javascript
[01:18:31]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第一场 1月10日
2021/03/11 DOTA
深入学习python的yield和generator
2016/03/10 Python
浅谈Python中的私有变量
2018/02/28 Python
Django contenttypes 框架详解(小结)
2018/08/13 Python
pandas 空的dataframe 插入列名的示例
2018/10/30 Python
Python3 解决读取中文文件txt编码的问题
2019/12/20 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
2020/06/10 Python
Python如何设置指定窗口为前台活动窗口
2020/08/12 Python
印度手工编织服装和家居用品商店:Fabindi
2019/10/07 全球购物
大学生毕业自我鉴定范文
2014/02/03 职场文书
店长职务说明书
2014/02/04 职场文书
公司活动总结范文
2014/07/01 职场文书
小学三好学生事迹材料
2014/08/15 职场文书
乡镇计划生育工作汇报
2014/10/28 职场文书
幼儿园教师师德表现自我评价
2015/03/05 职场文书
小区物业管理2015年度工作总结
2015/10/22 职场文书