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递归计算N!的方法
May 05 Python
Python计算三维矢量幅度的方法
Jun 15 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
Feb 23 Python
Centos 升级到python3后pip 无法使用的解决方法
Jun 12 Python
Python变量类型知识点总结
Feb 18 Python
pandas 层次化索引的实现方法
Jul 06 Python
python中 * 的用法详解
Jul 10 Python
基于Python的图像数据增强Data Augmentation解析
Aug 13 Python
Python上下文管理器用法及实例解析
Nov 11 Python
TensorBoard 计算图的查看方式
Feb 15 Python
解决numpy数组互换两行及赋值的问题
Apr 17 Python
解决pycharm下载库时出现Failed to install package的问题
Sep 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 session 预定义数组
2009/03/16 PHP
ThinkPHP3.1新特性之对页面压缩输出的支持
2014/06/19 PHP
phpStudy vscode 搭建debug调试的教程详解
2020/07/28 PHP
JavaScript While 循环基础教程
2007/04/05 Javascript
用js来获取上传的文件名纯粹是为了美化而用
2013/10/23 Javascript
Nginx上传文件全部缓存解决方案
2015/08/17 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
懒加载实现的分页&amp;&amp;网站footer自适应
2016/12/21 Javascript
BootStrapValidator初使用教程详解
2017/02/10 Javascript
详解vuelidate 对于vueJs2.0的验证解决方案
2017/03/09 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
利用jQuery异步上传文件的插件用法详解
2017/07/19 jQuery
js中let和var定义变量的区别
2018/02/08 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
微信小程序 云开发模糊查询实现解析
2019/09/02 Javascript
[01:04:39]OG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
Python实现从url中提取域名的几种方法
2014/09/26 Python
使用anaconda的pip安装第三方python包的操作步骤
2018/06/11 Python
Python查找文件中包含中文的行方法
2018/12/19 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
2020/06/29 Python
如何利用python读取micaps文件详解
2020/10/18 Python
pycharm 如何取消连按两下shift出现的全局搜索
2021/01/15 Python
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
CSS3 animation实现简易幻灯片轮播特效
2016/09/27 HTML / CSS
HTML5资源预加载(Link prefetch)详细介绍(给你的网页加速)
2014/05/07 HTML / CSS
Debenhams百货英国官方网站:Debenhams UK
2016/07/12 全球购物
Aerosoles爱柔仕官网:美国舒软女鞋品牌
2017/07/17 全球购物
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
成人大专生实习期的自我评价
2013/10/02 职场文书
银行个人求职自荐信范文
2013/12/16 职场文书
优秀学生事迹材料
2014/02/08 职场文书
干部作风建设心得体会
2014/10/22 职场文书
详细了解java监听器和过滤器
2021/07/09 Java/Android
java如何实现获取客户端ip地址的示例代码
2022/04/07 Java/Android