修改二等座的余票数返回为字符串的问题

优化订单查询bug
remotes/test12306/master
wenxianping 2018-01-10 09:42:25 +08:00
parent c5af54f8c4
commit 4430cd6ff8
3 changed files with 63 additions and 9 deletions

View File

@ -423,21 +423,21 @@ class select:
if "status" in getQueueCountResult and getQueueCountResult["status"] is True:
if "countT" in getQueueCountResult["data"]:
ticket = getQueueCountResult["data"]["ticket"]
ticket_split = ticket.split(",")[1] if ticket.find(",") != -1 else ticket
if set_type == "无座": # 修改无座和硬座的座位号提交是个字符串的问题
ticket = ticket_split[1]
elif set_type == "硬座":
ticket = ticket_split[0]
ticket_split = sum(ticket.split(",")) if ticket.find(",") != -1 else ticket
# if set_type == "无座": # 修改无座和硬座的座位号提交是个字符串的问题
# ticket = ticket_split[1]
# elif set_type == "硬座":
# ticket = ticket_split[0]
countT = getQueueCountResult["data"]["countT"]
if int(countT) is 0:
if int(ticket) < len(self.user_info):
if int(ticket_split) < len(self.user_info):
print("当前余票数小于乘车人数,放弃订票")
else:
print("排队成功, 当前余票还剩余:" + ticket + "")
print("排队成功, 当前余票还剩余:" + ticket_split + "")
if self.checkQueueOrder():
return True
else:
print("当前排队人数:" + str(countT) + "当前余票还剩余:" + getQueueCountResult["data"]["ticket"]+ "张,继续排队中")
print("当前排队人数:" + str(countT) + "当前余票还剩余:" + ticket_split + "张,继续排队中")
else:
print("排队发现未知错误{0},将此列车 {1}加入小黑屋".format(getQueueCountResult, train_no))
self.ticket_black_list[train_no] = datetime.datetime.now()
@ -543,7 +543,7 @@ class select:
if "data" in queryMyOrderNoCompleteResult and queryMyOrderNoCompleteResult["data"] and "orderDBList" in queryMyOrderNoCompleteResult["data"] and queryMyOrderNoCompleteResult["data"]["orderDBList"]:
orderId = queryMyOrderNoCompleteResult["data"]["orderDBList"][0]["sequence_no"]
return orderId
elif "orderCacheDTO" in queryMyOrderNoCompleteResult["data"] and queryMyOrderNoCompleteResult["data"]["orderCacheDTO"]:
elif "data" in queryMyOrderNoCompleteResult and "orderCacheDTO" in queryMyOrderNoCompleteResult["data"] and queryMyOrderNoCompleteResult["data"]["orderCacheDTO"]:
if "message" in queryMyOrderNoCompleteResult["data"]["orderCacheDTO"] and queryMyOrderNoCompleteResult["data"]["orderCacheDTO"]["message"]:
print(queryMyOrderNoCompleteResult["data"]["orderCacheDTO"]["message"]["message"])
raise ticketNumOutException(queryMyOrderNoCompleteResult["data"]["orderCacheDTO"]["message"]["message"])

54
myUrllib/httpUtils.py Normal file
View File

@ -0,0 +1,54 @@
# -*- coding: utf8 -*-
import datetime
import requests
class HTTPClient(object):
def __init__(self):
"""
:param method:
:param headers: Must be a dict. Such as headers={'Content_Type':'text/html'}
"""
self.session = requests.session()
self._set_header()
def _set_header(self):
"""设置header"""
add_header = {
"Content-Type": "application/x-www-form-urlencoded; charset=utf-8",
"X-Requested-With": "xmlHttpRequest",
"User-Agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36",
"Referer": "https://kyfw.12306.cn/otn/login/init",
"Accept": "*/*",
}
self.session.headers.update(add_header)
def get(self, url, proxy=None, **kwargs):
if proxy:
proxies = {"http": proxy}
else:
proxies = ""
response = self.session.request(method="GET",
url=url,
proxies=proxies,
**kwargs)
if response.status_code == 200:
return response.content
else:
print("请求失败。{0}".format(response))
def post(self, url, data=None, proxy=None, **kwargs):
if proxy:
proxies = {"http": proxy}
else:
proxies = ""
response = self.session.request(method="POST",
url=url,
data=data,
proxies=proxies,
**kwargs)
if response.status_code == 200:
return response.content
else:
print("请求失败。{0}".format(response))

BIN
tkcode

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 15 KiB