|
@@ -13,8 +13,8 @@ TODAY = None
|
|
|
TODAY_SUCCESS = False
|
|
TODAY_SUCCESS = False
|
|
|
TODAY_EXEC_TIME = None
|
|
TODAY_EXEC_TIME = None
|
|
|
|
|
|
|
|
-d_start_time = None
|
|
|
|
|
-d_end_time = None
|
|
|
|
|
|
|
+# d_start_time = None
|
|
|
|
|
+# d_end_time = None
|
|
|
|
|
|
|
|
def getHeader():
|
|
def getHeader():
|
|
|
return {
|
|
return {
|
|
@@ -67,7 +67,7 @@ def f_getKq(session):
|
|
|
return f_submitKq(session, getObj(data['result']['sxid'], data['result']['xssxglid'], data['result']['data'][0]['lat'], data['result']['data'][0]['lng'], data['result']['data'][0]['title']))
|
|
return f_submitKq(session, getObj(data['result']['sxid'], data['result']['xssxglid'], data['result']['data'][0]['lat'], data['result']['data'][0]['lng'], data['result']['data'][0]['title']))
|
|
|
else:
|
|
else:
|
|
|
print("[%s] %s" % (TODAY, data))
|
|
print("[%s] %s" % (TODAY, data))
|
|
|
- print("[%s] %s" % (TODAY, '缺少部分信息'))
|
|
|
|
|
|
|
+ print("[%s] %s" % (TODAY, '缺少部分信息,无法进行打卡'))
|
|
|
return False
|
|
return False
|
|
|
except Exception as e:
|
|
except Exception as e:
|
|
|
print("[%s] %s" % (TODAY, e))
|
|
print("[%s] %s" % (TODAY, e))
|
|
@@ -79,7 +79,7 @@ def f_submitKq(session, data):
|
|
|
"xskqjlxxDTO": data,
|
|
"xskqjlxxDTO": data,
|
|
|
"_": getTime()
|
|
"_": getTime()
|
|
|
}, headers=getHeader())
|
|
}, headers=getHeader())
|
|
|
- print("[%s] %s" % (TODAY, r.text))
|
|
|
|
|
|
|
+ print("[%s] 服务端数据:%s" % (TODAY, r.text))
|
|
|
d = json.loads(r.text)
|
|
d = json.loads(r.text)
|
|
|
if 'status' in d:
|
|
if 'status' in d:
|
|
|
if d['status'] == 200 or d['status'] == 300:
|
|
if d['status'] == 200 or d['status'] == 300:
|
|
@@ -94,7 +94,6 @@ def getToday():
|
|
|
return str(datetime.datetime.now().date())
|
|
return str(datetime.datetime.now().date())
|
|
|
|
|
|
|
|
def getRandomTime():
|
|
def getRandomTime():
|
|
|
- global d_start_time, d_end_time
|
|
|
|
|
d_start_time = datetime.datetime.strptime(TODAY+" %d:%d:00" % (config.START_TIME[0], config.START_TIME[1]), '%Y-%m-%d %H:%M:%S')
|
|
d_start_time = datetime.datetime.strptime(TODAY+" %d:%d:00" % (config.START_TIME[0], config.START_TIME[1]), '%Y-%m-%d %H:%M:%S')
|
|
|
d_end_time = datetime.datetime.strptime(TODAY+" %d:%d:59" % (config.END_TIME[0], config.END_TIME[1]), '%Y-%m-%d %H:%M:%S')
|
|
d_end_time = datetime.datetime.strptime(TODAY+" %d:%d:59" % (config.END_TIME[0], config.END_TIME[1]), '%Y-%m-%d %H:%M:%S')
|
|
|
i_start_time = int(time.mktime(d_start_time.timetuple()))
|
|
i_start_time = int(time.mktime(d_start_time.timetuple()))
|
|
@@ -103,13 +102,13 @@ def getRandomTime():
|
|
|
|
|
|
|
|
|
|
|
|
|
def f_start():
|
|
def f_start():
|
|
|
- global TODAY_SUCCESS
|
|
|
|
|
session = requests.session()
|
|
session = requests.session()
|
|
|
success = f_login(session)
|
|
success = f_login(session)
|
|
|
if not success:
|
|
if not success:
|
|
|
- return
|
|
|
|
|
|
|
+ return False
|
|
|
TODAY_SUCCESS = f_getKq(session)
|
|
TODAY_SUCCESS = f_getKq(session)
|
|
|
- print("[%s] %s %s" % (getToday(), TODAY_SUCCESS, datetime.datetime.now()))
|
|
|
|
|
|
|
+ print("[%s] %s %s" % (TODAY, ("成功" if TODAY_SUCCESS else "失败"), datetime.datetime.now()))
|
|
|
|
|
+ return TODAY_SUCCESS
|
|
|
|
|
|
|
|
def f_loop():
|
|
def f_loop():
|
|
|
global TODAY, TODAY_SUCCESS, TODAY_EXEC_TIME
|
|
global TODAY, TODAY_SUCCESS, TODAY_EXEC_TIME
|
|
@@ -127,9 +126,13 @@ def f_loop():
|
|
|
time.sleep(5)
|
|
time.sleep(5)
|
|
|
continue
|
|
continue
|
|
|
else:
|
|
else:
|
|
|
- print("[%s] 开始打卡时间:%s" % (TODAY, "now"))
|
|
|
|
|
- f_start()
|
|
|
|
|
- time.sleep(5)
|
|
|
|
|
|
|
+ print("[%s] 开始打卡时间:现在" % TODAY)
|
|
|
|
|
+ succ = f_start()
|
|
|
|
|
+ if not succ: # 失败等待1分钟后重试
|
|
|
|
|
+ TODAY_EXEC_TIME = None
|
|
|
|
|
+ time.sleep(60)
|
|
|
|
|
+ else:
|
|
|
|
|
+ time.sleep(5)
|
|
|
continue
|
|
continue
|
|
|
|
|
|
|
|
if not TODAY == getToday():
|
|
if not TODAY == getToday():
|
|
@@ -140,8 +143,11 @@ def f_loop():
|
|
|
print("[%s] 开始打卡时间:%s" % (TODAY, TODAY_EXEC_TIME))
|
|
print("[%s] 开始打卡时间:%s" % (TODAY, TODAY_EXEC_TIME))
|
|
|
|
|
|
|
|
if now >= TODAY_EXEC_TIME and not TODAY_SUCCESS:
|
|
if now >= TODAY_EXEC_TIME and not TODAY_SUCCESS:
|
|
|
- f_start()
|
|
|
|
|
- time.sleep(5)
|
|
|
|
|
|
|
+ succ = f_start()
|
|
|
|
|
+ if not succ: # 失败等待1分钟后重试
|
|
|
|
|
+ time.sleep(60)
|
|
|
|
|
+ else:
|
|
|
|
|
+ time.sleep(5)
|
|
|
continue
|
|
continue
|
|
|
|
|
|
|
|
time.sleep(5)
|
|
time.sleep(5)
|