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实现备份文件实例
Sep 16 Python
python输出当前目录下index.html文件路径的方法
Apr 28 Python
Python中字典映射类型的学习教程
Aug 20 Python
python检查URL是否正常访问的小技巧
Feb 25 Python
python+opencv+caffe+摄像头做目标检测的实例代码
Aug 03 Python
python使用opencv驱动摄像头的方法
Aug 03 Python
python中列表的切片与修改知识点总结
Jul 23 Python
python requests更换代理适用于IP频率限制的方法
Aug 21 Python
Python有参函数使用代码实例
Jan 06 Python
django中related_name的用法说明
May 20 Python
Python爬虫实现百度翻译功能过程详解
May 29 Python
Python 打印自己设计的字体的实例讲解
Jan 04 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
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
TMDPHP 模板引擎使用教程
2012/03/13 PHP
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
2013/06/20 PHP
PHP实现的简易版图片相似度比较
2015/01/07 PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
2016/11/30 PHP
Symfony2针对输入时间进行查询的方法分析
2017/06/28 PHP
yii gridview实现时间段筛选功能
2017/08/15 PHP
PHP折半(二分)查找算法实例分析
2018/05/12 PHP
Laravel 实现添加多语言提示信息
2019/10/25 PHP
js AppendChild与insertBefore用法详细对比
2013/12/16 Javascript
jquery中$.post()方法的简单实例
2014/02/04 Javascript
JS应用正则表达式转换大小写示例
2014/09/18 Javascript
js实现touch移动触屏滑动事件
2015/04/17 Javascript
JavaScript实现的MD5算法完整实例
2016/02/02 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
2016/03/22 Javascript
JS+Canvas绘制时钟效果
2020/08/20 Javascript
Bootstrap table的使用方法
2016/11/02 Javascript
JavaScript学习总结之正则的元字符和一些简单的应用
2017/06/30 Javascript
微信小程序之判断页面滚动方向的示例代码
2018/08/30 Javascript
vue实现的网易云音乐在线播放和下载功能案例
2019/02/18 Javascript
js闭包的9个使用场景
2020/12/29 Javascript
[55:23]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python+Pandas 获取数据库并加入DataFrame的实例
2018/07/25 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
2018/11/29 Python
Python3.5面向对象编程图文与实例详解
2019/04/24 Python
Python中os模块功能与用法详解
2020/02/26 Python
python GUI库图形界面开发之PyQt5中QMainWindow, QWidget以及QDialog的区别和选择
2020/02/26 Python
python关于倒排列的知识点总结
2020/10/13 Python
用React加CSS3实现微信拆红包动画效果
2017/03/13 HTML / CSS
详解使用HTML5 Canvas创建动态粒子网格动画
2016/12/14 HTML / CSS
移交协议书
2014/08/19 职场文书
2014机关干部学习“焦裕禄精神”思想汇报
2014/09/19 职场文书
英语读书笔记
2015/07/02 职场文书
《观潮》教学反思
2016/02/17 职场文书
教你利用python实现企业微信发送消息
2021/05/23 Python