diff --git a/UnitTest/TestAll.py b/UnitTest/TestAll.py index d3d78a4..d55688e 100644 --- a/UnitTest/TestAll.py +++ b/UnitTest/TestAll.py @@ -88,9 +88,9 @@ class testAll(unittest.TestCase): while True: try: starttime = time.time() - rsp = requests.post(url="http://161.117.202.218:8000/verify/base64/", + rsp = requests.post(url="http://120.77.154.140:8000/verify/base64/", data={ - 'imageFile': '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'}, + 'imageFile': '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'}, timeout=60, ) print(rsp.content) diff --git a/config/configCommon.py b/config/configCommon.py index 0f99f38..7faef5a 100755 --- a/config/configCommon.py +++ b/config/configCommon.py @@ -132,4 +132,4 @@ def checkDate(station_dates): raise ticketConfigException(u"当前日期设置无符合查询条件的,已被全部删除,请查证后添加!!!") else: station_dates[station_dates.index(station_date)] = date - return station_dates + return station_dates \ No newline at end of file diff --git a/init/login.py b/init/login.py index 2d05008..d8cbb91 100755 --- a/init/login.py +++ b/init/login.py @@ -1,13 +1,9 @@ # -*- coding=utf-8 -*- import copy -import json -import random -import re import time from collections import OrderedDict from time import sleep import TickerConfig -from config.urlConf import urls from inter.GetPassCodeNewOrderAndLogin import getPassCodeNewOrderAndLogin1 from inter.GetRandCode import getRandCode from inter.LoginAysnSuggest import loginAysnSuggest diff --git a/init/select_ticket_info.py b/init/select_ticket_info.py index 0a2de53..c517913 100755 --- a/init/select_ticket_info.py +++ b/init/select_ticket_info.py @@ -42,7 +42,7 @@ class select: self.login = GoLogin(self, TickerConfig.IS_AUTO_CODE, self.auto_code_type) self.cdn_list = [] self.cookies = "" - self.queryUrl = "leftTicket/query" + self.queryUrl = "leftTicket/queryO" self.passengerTicketStrList = "" self.passengerTicketStrByAfterLate = "" self.oldPassengerStr = "" diff --git a/inter/ConfirmSingleForQueue.py b/inter/ConfirmSingleForQueue.py index 9c6ecf0..ba6a28e 100644 --- a/inter/ConfirmSingleForQueue.py +++ b/inter/ConfirmSingleForQueue.py @@ -78,7 +78,6 @@ class confirmSingleForQueue: if "status" in checkQueueOrderResult and checkQueueOrderResult["status"]: c_data = checkQueueOrderResult["data"] if "data" in checkQueueOrderResult else {} if 'submitStatus' in c_data and c_data['submitStatus'] is True: - # print(u"提交订单成功!") qow = queryOrderWaitTime(self.session) qow.sendQueryOrderWaitTime() else: diff --git a/inter/GetQueueCount.py b/inter/GetQueueCount.py index f9a3772..deb0fdc 100644 --- a/inter/GetQueueCount.py +++ b/inter/GetQueueCount.py @@ -57,10 +57,10 @@ class getQueueCount: else: new_train_date = list(filter(None, str(time.asctime(time.strptime(self.station_dates, "%Y-%m-%d"))).split(" "))) data = OrderedDict() - data['train_date'] = "{0} {1} 0{2} {3} 00:00:00 GMT+0800 (中国标准时间)".format( + data['train_date'] = "{0} {1} {2} {3} 00:00:00 GMT+0800 (中国标准时间)".format( new_train_date[0], new_train_date[1], - new_train_date[2], + new_train_date[2] if len(new_train_date[2]) is 2 else f"0{new_train_date[2]}", new_train_date[4], ), data['train_no'] = self.ticketInfoForPassengerForm['queryLeftTicketRequestDTO']['train_no'], @@ -88,7 +88,11 @@ class getQueueCount: ticket = getQueueCountResult["data"]["ticket"] ticket_split = sum(map(conversion_int, ticket.split(","))) if ticket.find(",") != -1 else ticket countT = getQueueCountResult["data"]["countT"] - # if int(countT) is 0: + if int(ticket_split) is 0: + wrapcache.set(key=self.train_no, value=datetime.datetime.now(), + timeout=TickerConfig.TICKET_BLACK_LIST_TIME * 60) + print(f"排队失败,当前余票数还剩: {ticket_split} 张") + return print(u"排队成功, 你排在: {1}位, 当前余票还剩余: {0} 张".format(ticket_split, countT)) csf = confirmSingleForQueue(self.session, self.ifShowPassCodeTime, self.is_need_code, self.token, self.set_type, self.ticket_peoples, self.ticketInfoForPassengerForm, @@ -133,3 +137,13 @@ class queryQueueByAfterNate: raise ticketIsExitsException(ticket.WAIT_AFTER_NATE_SUCCESS) +if __name__ == '__main__': + new_train_date = list(filter(None, str(time.asctime(time.strptime("2019-10-07", "%Y-%m-%d"))).split(" "))) + print(new_train_date) + train_date = "{0} {1} {2} {3} 00:00:00 GMT+0800 (中国标准时间)".format( + new_train_date[0], + new_train_date[1], + new_train_date[2] if len(new_train_date[2]) is 2 else f"0{new_train_date[2]}", + new_train_date[4], + ) + print(train_date) \ No newline at end of file diff --git a/inter/GetQueueCountAsync.py b/inter/GetQueueCountAsync.py index 4df24b7..132e27f 100644 --- a/inter/GetQueueCountAsync.py +++ b/inter/GetQueueCountAsync.py @@ -65,7 +65,7 @@ class getQueueCountAsync: data['train_date'] = "{0} {1} {2} {3} 00:00:00 GMT+0800 (中国标准时间)".format( new_train_date[0], new_train_date[1], - new_train_date[2], + new_train_date[2] if len(new_train_date[2]) is 2 else f"0{new_train_date[2]}", new_train_date[4], time.strftime("%H:%M:%S", time.localtime(time.time())) ), @@ -96,6 +96,12 @@ class getQueueCountAsync: ticket_data = getQueueCountAsyncResult["data"]["ticket"] ticket_split = sum(map(self.conversion_int, ticket_data.split(","))) if ticket_data.find( ",") != -1 else ticket_data + if int(ticket_split) is 0: + # 增加余票数为0时,将车次加入小黑屋 + wrapcache.set(key=self.train_no, value=datetime.datetime.now(), + timeout=TickerConfig.TICKET_BLACK_LIST_TIME * 60) + print(f"排队失败,当前余票数为{ticket_split}张") + return print(u"排队成功, 当前余票还剩余: {0} 张".format(ticket_split)) c = confirmSingleForQueueAsys(session=self.session, passengerTicketStr=self.passengerTicketStr, diff --git a/inter/PassengerInitApi.py b/inter/PassengerInitApi.py index 79c67da..50237c3 100644 --- a/inter/PassengerInitApi.py +++ b/inter/PassengerInitApi.py @@ -1,3 +1,6 @@ +import datetime +import wrapcache +import TickerConfig from config.urlConf import urls from inter.ConfirmHB import confirmHB @@ -18,6 +21,11 @@ class passengerInitApi: return data = passengerInitApiRsp.get("data", {}) jzdhDateE = data.get("jzdhDateE") + if not data.get("jzdhHourE"): + wrapcache.set(key=f"hb{self.tickerNo}", value=datetime.datetime.now(), + timeout=TickerConfig.TICKET_BLACK_LIST_TIME * 60) + print(f"获取当前候补日期失败,原因: {data.get('jzdhHourE')}") + return jzdhHourE = data.get("jzdhHourE").replace(":", "#") jzdhDate = f"{jzdhDateE}#{jzdhHourE}" print(f"当前候补日期为:{jzdhDateE} {jzdhHourE}")