<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
對於程序/執行緒/攜程/非同步的內容 有時間準備寫寫了 真的一直用for去迴圈慢到懷疑人生 需要運用的場景也會很多 所以分開一點點總結一下
先上程式碼看一下內容,多執行緒請求介面
imoprt threading # 首先運用到threading模組 class BrushGifts: # 以下是兩個相同的介面 send_gift_room_one()是送禮的介面 # 也就是說我想完成的狀態是A送B B送A 兩個使用者同時想對方贈送禮物 def giftt(self, uid, recvUid, giftId): """ 送禮介面 :param uid: 送禮使用者 :param recvUid: 收禮使用者 :param giftId: 禮物道具id :return: """ VoiceRoom().send_gift_room_one(uid, recvUid, giftId) def giftt_a(self, uid, recvUid, giftId): # 與上面的介面相同 不多做敘述 # 沒什麼區別 就是寫著好理解倆介面的概念 VoiceRoom().send_gift_room_one(recvUid, uid, giftId) if __name__ == '__main__': # 因為我的賬號是儲存在yaml檔案內 所以需要先倒出需要使用者的uid列表 # 送禮人與收禮人分別倒出 uid_list = YamlHandler(YamlThePath().voice_room_cpNew).get_uid_list(10) rUid_list = YamlHandler(YamlThePath().number_old).get_scope_uid(1500, 10) # 這裡暫時先展示最簡單的AB同時互送~ for (i, j) in zip(uid_list, rUid_list): # target內需要傳入方法名 不要帶()因為帶括號就等於去呼叫了該方法 會直接開始執行 # args內傳入輸入帶入的引數 可以按順序來 也可以整理成元組或字典接收 t1 = threading.Thread(target=BrushGifts().giftt, args=(i, j, 51620)) # 兩個threading.Thread就是我請求並行兩個介面 t2 = threading.Thread(target=BrushGifts().giftt, args=(j, i, 51620)) # t1.start()為執行 t1.start() t2.start()
主執行緒:
主執行緒的概念就是這個py檔案內從頭到位的執行 當我執行完最後一行程式碼t2.start()後 主執行緒會進入等待狀態,等待子執行緒結束後主執行緒才會結束
子執行緒:
子執行緒的概念就是在主執行緒執行的過程中我執行到了這裡 當然這裡是通過t1.start()方法來進行呼叫的
t1 = threading.Thread(target=BrushGifts().giftt, args=(i, j, 51620))
這時候系統會再開闢出一條子執行緒進行BrushGifts().giftt方法的執行與呼叫
主執行緒在進行的時候會執行t1.start()與t2.start()但是他不會等待他們執行結束,主執行緒會繼續往下,所以t1.start()與t2.start()是同時請求,當t1.start()與t2.start()兩個子程序都結束時,主執行緒才會結束~
因為主執行緒執行t1.start()與t2.start()是一行一行的執行 而且python無法做到準確意義上的並行 所以如果對資料速度要求很高的時候 此方法不適用
作用:用來重複插入資料
1、首先下載好python 然後 cmd 輸入 python 判斷是否全域性安裝成功
2、下載好PcIdea
3、下載好自己需要的庫
4、檢視請求網路
5、給你一個模板自己慢慢體會
import requests #匯入requests包 import random import json import time # response = requests.get('http://www.baidu.com') # print(response.status_code) # 列印狀態碼 # print(response.url) # 列印請求url # print(response.headers) # 列印頭資訊 # print(response.cookies) # 列印cookie資訊 # print(response.text) #以文字形式列印網頁原始碼 # print(response.content) #以位元組流形式列印 # print(response.json()) AddCarURL = "http://localhost:10086/jeecg-boot/cable/insurance/add" AddCarCookies = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2MjkwOTUyNzcsInVzZXJuYW1lIjoiYWRtaW4ifQ.Kn1jB5gUkCdnszSVxnjVVKtRMbx_WJSVZW6G-yJaid8" randomStr = "ABCDEFGHIJKLMNOPQRST" randomInsurance = ["泰康人壽","陽光保險","新華保險","太平人壽","同方全球人壽","友邦保險"," 招商仁和","平安保險"] randomBox = ["石鮮倉儲","明順倉儲","雄星倉儲","金盛倉儲","旺恆倉儲","中豹倉儲","飛翔倉儲","速發倉儲","春天倉儲"] sess = requests.session() headers = { "X-Access-Token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2MjkxMDUyMjUsInVzZXJuYW1lIjoiYWRtaW4ifQ.EUAjJYACel8QHFw4AFERIaDjXZJTwOOyp8uncqx3Jps", "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.19041", "Referer":"http://localhost:3000/cable/VehicleList", "Origin":"http://localhost:3000", "Host":"localhost:10086", "Content-Type":"application/json; charset=utf-8" } a1=(2017,1,1,0,0,0,0,0,0) #設定開始日期時間元組(1976-01-01 00:00:00) a2=(2019,3,16,23,59,59,0,0,0) #設定結束日期時間元組(1990-12-31 23:59:59) a3=(2019,3,16,0,0,0,0,0,0) #設定開始日期時間元組(1976-01-01 00:00:00) a4=(2021,8,16,23,59,59,0,0,0) #設定結束日期時間元組(1990-12-31 23:59:59) start=time.mktime(a1) #生成開始時間戳 end=time.mktime(a2) #生成結束時間戳 start1=time.mktime(a3) #生成開始時間戳 end2=time.mktime(a4) #生成結束時間戳 # for i in range(10): # t=random.randint(start,end) #在開始和結束時間戳中隨機取出一個 # date_touple=time.localtime(t) #將時間戳生成時間元組 # date=time.strftime("%Y-%m-%d",date_touple) #將時間元組轉成格式化字串(1976-05-21) # # t1 = random.randint(start1,end2) # date_touplen=time.localtime(t1) #將時間戳生成時間元組 # dateOne=time.strftime("%Y-%m-%d",date_touplen) #將時間元組轉成格式化字串(1976-05-21) # print(date + " " +dateOne) def addCar(num:int): # {"type": "2", "carryingCapacity": "3噸", "license": "粵A888", "engineNumber": "123456", "state": 0} # {"vehicleId": "2", "insuraName": "人壽保險", "insurancePolicy": "UY1254SD5492W", "insuranceDateBegin": "2021-08-16", # "insuranceDateEnd": "2021-08-31", "strongPolicy": "UY1254SD5492E", "strongDateBegin": "2021-07-01", # "strongDateEnd": "2021-08-28", "license": "2"} for i in range(num): t = random.randint(start, end) # 在開始和結束時間戳中隨機取出一個 date_touple = time.localtime(t) # 將時間戳生成時間元組 date = time.strftime("%Y-%m-%d", date_touple) # 將時間元組轉成格式化字串(1976-05-21) t1 = random.randint(start1, end2) date_touplen = time.localtime(t1) # 將時間戳生成時間元組 dateOne = time.strftime("%Y-%m-%d", date_touplen) # 將時間元組轉成格式化字串(1976-05-21) datas = {} datas["vehicleId"] = "2" datas["insuraName"] = random.choice(randomInsurance) datas["insurancePolicy"] = random.choice(randomStr) + str(random.randint(10000, 99999)) + random.choice(randomStr) + str(random.randint(10000, 99999)); datas["insuranceDateBegin"] = date datas["insuranceDateEnd"] = dateOne datas["strongPolicy"] = random.choice(randomStr) + str(random.randint(10000, 99999)) + random.choice(randomStr) + str(random.randint(10000, 99999)); datas["strongDateBegin"] = date datas["strongDateEnd"] = dateOne datas["license"] = i print(datas) res=requests.post(url=AddCarURL, data=json.dumps(datas), headers=headers) print(res.text) addCar(100)
記得要通過 token 驗證,還有根據資料轉json 即可
以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45