Python實(shí)現(xiàn)可設(shè)置持續(xù)運(yùn)行時(shí)間、線程數(shù)及時(shí)間間隔的多線程異步post請求功能
本文實(shí)例講述了Python實(shí)現(xiàn)可設(shè)置持續(xù)運(yùn)行時(shí)間、線程數(shù)及時(shí)間間隔的多線程異步post請求功能。分享給大家供大家參考,具體如下:
#coding=utf8
'''
random.randint(a, b):用于生成一個(gè)指定范圍內(nèi)的整數(shù)。
其中參數(shù)a是下限,參數(shù)b是上限,生成的隨機(jī)數(shù)n: a <= n <= b
random.choice(sequence):從序列中獲取一個(gè)隨機(jī)元素
參數(shù)sequence表示一個(gè)有序類型(列表,元組,字符串)
'''
import httplib,json
import time
import threading
from random import randint,choice
#創(chuàng)建請求函數(shù)
def postRequest(threadNum):
postJson={
}
#定義需要進(jìn)行發(fā)送的數(shù)據(jù)
postData=json.dumps(postJson)
#定義一些文件頭
headerdata = {
"content-type":"application/json",
}
#接口
requrl ="/v1/query"
#請求服務(wù),例如:www.baidu.com
hostServer=""
#連接服務(wù)器
conn = httplib.HTTPConnection(hostServer)
#發(fā)送請求
conn.request(method="POST",url=requrl,body=postData,headers=headerdata)
#獲取請求響應(yīng)
response=conn.getresponse()
#打印請求狀態(tài)
if response.status in range(200,300):
print u"線程"+str(threadNum)+u"狀態(tài)碼:"+str(response.status)
conn.close()
def run(threadNum,internTime,duration):
#創(chuàng)建數(shù)組存放線程
threads=[]
try:
#創(chuàng)建線程
for i in range(1,threadNum):
#針對函數(shù)創(chuàng)建線程
t=threading.Thread(target=postRequest,args=(i,))
#把創(chuàng)建的線程加入線程組
threads.append(t)
except Exception,e:
print e
try:
#啟動(dòng)線程
for thread in threads:
thread.setDaemon(True)
thread.start()
time.sleep(internTime)
#等待所有線程結(jié)束
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"輸入持續(xù)運(yùn)行時(shí)間:")
while (startime+str(duratiion))!=now:
run(10,1,int(duratiion))
now=time.strftime("%Y%m%d%H%M%S")
運(yùn)行結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
python?實(shí)現(xiàn)?redis?數(shù)據(jù)庫的操作
這篇文章主要介紹了python?包?redis?數(shù)據(jù)庫的操作教程,redis?是一個(gè)?Key-Value?數(shù)據(jù)庫,下文基于python的相關(guān)資料展開對redis?數(shù)據(jù)庫操作的詳細(xì)介紹,需要的小伙伴可以參考一下2022-04-04
Python利用for循環(huán)打印星號(hào)三角形的案例
這篇文章主要介紹了Python利用for循環(huán)打印星號(hào)三角形的案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04
OpenCV-Python 實(shí)現(xiàn)兩張圖片自動(dòng)拼接成全景圖
圖片的全景拼接如今已不再稀奇,現(xiàn)在的智能攝像機(jī)和手機(jī)攝像頭基本都帶有圖片自動(dòng)全景拼接的功能,本文使用OpenCV-Python 實(shí)現(xiàn)兩張圖片自動(dòng)拼接成全景圖,感興趣的可以了解一下2021-06-06
python實(shí)時(shí)檢測鍵盤輸入函數(shù)的示例
今天小編就為大家分享一篇python實(shí)時(shí)檢測鍵盤輸入函數(shù)的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
詳解Python 關(guān)聯(lián)規(guī)則分析
這篇文章主要介紹了Python 關(guān)聯(lián)規(guī)則分析的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03
Python中使用moviepy進(jìn)行視頻分割的實(shí)現(xiàn)方法
MoviePy是一個(gè)關(guān)于視頻編輯的python庫,主要包括:剪輯,嵌入拼接,標(biāo)題插入,視頻合成(又名非線性編輯),視頻處理,和自定制效果。本文重點(diǎn)給大家介紹Python中使用moviepy進(jìn)行視頻分割的實(shí)現(xiàn)方法,需要的朋友一起看看吧2021-12-12
Python3 實(shí)現(xiàn)隨機(jī)生成一組不重復(fù)數(shù)并按行寫入文件
下面小編就為大家分享一篇Python3 實(shí)現(xiàn)隨機(jī)生成一組不重復(fù)數(shù)并按行寫入文件的示例。具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04

