25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

82 satır
2.7 KiB

2 yıl önce
import time
import sys
import os
curPath = os.path.abspath(os.path.dirname(__file__))
rootPath = os.path.split(curPath)[0]
sys.path.append(rootPath)
from multiprocessing import Process
import requests
from tools import utils
from JDMain import JDSecKillSubmit
from api_timer import JDTimer
def syncTime():
jdTimer = JDTimer()
return jdTimer.local_jd_time_diff()
def yuyueSku(sku, ck):
jdapi = JDSecKillSubmit(sku, ck)
jdapi.appoint_task()
def killSku(sku, ck):
jdapi = JDSecKillSubmit(sku, ck)
for i in range(5):
print('%d次kill---------------------------->' % i)
if jdapi.killSku():
break
def work(killTime, ck):
print('ck:', ck)
sku = '100012043978'
killTimeTs = utils.getTimeStamp(killTime, format='%Y-%m-%d %H:%M:%S.%f')
syncedTime = False
hasYuyue = False
timeDiff = 0 # 时差
while True:
nowTimeTs = int(time.time() * 1000)
killDiff = killTimeTs - nowTimeTs
print("时间剩余%s" % str(int(killDiff / 1000)))
if killDiff < 5 * 60 * 1000 and not syncedTime:
syncedTime = True
timeDiff = syncTime()
print("时差:%s" % str(timeDiff))
killTimeTs = killTimeTs + timeDiff
elif killDiff < 2 * 60 * 1000 and not hasYuyue:
hasYuyue = True
yuyueSku(sku=sku, ck=ck)
elif killDiff < 0:
print("时差:%s" % str(timeDiff))
killSku(sku=sku, ck=ck)
break
time.sleep(0.01)
if __name__ == '__main__':
# 抢购时间
killTime = '2022-11-09 11:59:59.800'
# cookie
cks = [
'pin=jd_41d74c83f8224;wskey=AAJjKGIcAED51MS4xl3rMhkuKoz3aIdtHgYbbY_gONAtDcvoXgp0nCjPWKcjgXoBw3ZNcm-HVECeryK5NBFQiErqyGbAcqt-;whwswswws=JD012145b9WBZ52FxcoJ166359098310502j1UGQOp_xw1sHnZf2TBLxIAVcI1pr_ptSG7GbI4Jh8JHPzpgXIVd6vHgcp4KUP7bIcL92ot4SobMNdIjsb6CeO0xXfdGg1DB166dh3n~lV6zvij0xVW8O87RwFvqyq8bfocRq2uG0yIAc6GJfPzG3Vt7W-bSkl68yzw3cggRUZpEKUJ0VpkW0x0Q0aGrCFLasnWujHANJMp2D1tUHzbtF-NKQkCBUiGE1ZKdTwYkeVoNQaOoU87ivURTKramyPzaIW67BRI6kPNkr3PLHsHc;unionwsws={"devicefinger":"eidAfa90812247s5vgf0CkxeRgeWBZfWowyK9r4H9Y2h1wPWRDa\/+LyYAJea3ooTv4ePNmFFv1ZArvKR74Nk1rlZWoaTpHUgZCeqmC5Lix6Hz1eGUEN6","jmafinger":"JD012145b9WBZ52FxcoJ166359098310502j1UGQOp_xw1sHnZf2TBLxIAVcI1pr_ptSG7GbI4Jh8JHPzpgXIVd6vHgcp4KUP7bIcL92ot4SobMNdIjsb6CeO0xXfdGg1DB166dh3n~lV6zvij0xVW8O87RwFvqyq8bfocRq2uG0yIAc6GJfPzG3Vt7W-bSkl68yzw3cggRUZpEKUJ0VpkW0x0Q0aGrCFLasnWujHANJMp2D1tUHzbtF-NKQkCBUiGE1ZKdTwYkeVoNQaOoU87ivURTKramyPzaIW67BRI6kPNkr3PLHsHc"};',
]
p = []
for i in range(len(cks)):
p1 = Process(target=work, args=(killTime, cks[i],))
p1.start()
p.append(p1)
for i in range(len(cks)):
p[i].join()