mirror of https://github.com/testerSunshine/12306
parent
c5af54f8c4
commit
4430cd6ff8
|
@ -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"])
|
||||
|
|
|
@ -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))
|
Loading…
Reference in New Issue