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 多线程应用介绍
Dec 19 Python
Python Tkinter简单布局实例教程
Sep 03 Python
在Python中使用next()方法操作文件的教程
May 24 Python
Python批量提取PDF文件中文本的脚本
Mar 14 Python
python实现list由于numpy array的转换
Apr 04 Python
python os用法总结
Jun 08 Python
Python多进程原理与用法分析
Aug 21 Python
python按照多个条件排序的方法
Feb 08 Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 Python
Django 实现前端图片压缩功能的方法
Aug 07 Python
一文解决django 2.2与mysql兼容性问题
Jul 15 Python
Python函数中apply、map、applymap的区别
Nov 27 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 在windows下配置虚拟目录的方法介绍
2013/06/26 PHP
php漏洞之跨网站请求伪造与防止伪造方法
2013/08/15 PHP
sae使用smarty模板的方法
2013/12/17 PHP
在PHP模板引擎smarty生成随机数的方法和math函数详解
2014/04/24 PHP
对laravel的session获取与存取方法详解
2019/10/08 PHP
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
2007/04/27 Javascript
JavaScript 异步调用框架 (Part 3 - 代码实现)
2009/08/04 Javascript
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
js跳转页面方法总结
2014/01/29 Javascript
jQuery通过ajax快速批量提交表单数据
2016/10/25 Javascript
JavaScript &amp; jQuery完美判断图片是否加载完毕
2017/01/08 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
微信小程序获取音频时长与实时获取播放进度问题
2018/08/28 Javascript
读懂CommonJS的模块加载
2019/04/19 Javascript
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
2019/06/04 Javascript
[01:21:07]EG vs Liquid 2018国际邀请赛淘汰赛BO3 第一场 8.25
2018/08/29 DOTA
python远程登录代码
2008/04/29 Python
python实现数通设备tftp备份配置文件示例
2014/04/02 Python
Python中声明只包含一个元素的元组数据方法
2014/08/25 Python
Diango + uwsgi + nginx项目部署的全过程(可外网访问)
2018/04/22 Python
Python3中详解fabfile的编写
2018/06/24 Python
Python 元组拆包示例(Tuple Unpacking)
2019/12/24 Python
python3处理word文档实例分析
2020/12/01 Python
Selenium+BeautifulSoup+json获取Script标签内的json数据
2020/12/07 Python
python基于opencv实现人脸识别
2021/01/04 Python
使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的方法
2014/04/03 HTML / CSS
法国票务网站:Ticketmaster法国
2018/07/09 全球购物
美国高档帽子网上商店:Hats.com
2018/08/09 全球购物
日本著名化妆品零售网站:Cosme Land
2019/03/01 全球购物
CAT鞋加拿大官网:CAT Footwear加拿大
2020/08/05 全球购物
外贸主管求职简历的自我评价
2013/10/23 职场文书
数控技术应届生求职信
2013/11/13 职场文书
招商经理岗位职责
2013/11/16 职场文书
三严三实对照检查材料思想汇报
2014/09/28 职场文书
2015年社区矫正工作总结
2015/04/21 职场文书
python中数组和列表的简单实例
2022/03/25 Python