update version 116

pull/460/head
xianping.wen 2019-10-14 10:11:40 +08:00
parent 61401f9d2b
commit 264f88a565
3 changed files with 39 additions and 19 deletions

View File

@ -7,7 +7,9 @@
TICKET_TYPE = 2
# 出发日期(list) "2018-01-06", "2018-01-07"
STATION_DATES = []
STATION_DATES = [
"2019-10-25"
]
# 填入需要购买的车次(list)"G1353"
# 修改车次填入规则,注:(以前设置的车次逻辑不变),如果车次填入为空,那么就是当日乘车所有车次都纳入筛选返回
@ -15,10 +17,10 @@ STATION_DATES = []
STATION_TRAINS = []
# 出发城市,比如深圳北,就填深圳就搜得到
FROM_STATION = ""
FROM_STATION = "深圳北"
# 到达城市 比如深圳北,就填深圳就搜得到
TO_STATION = ""
TO_STATION = "广州南"
# 座位(list) 多个座位ex:
# "商务座",
@ -30,14 +32,15 @@ TO_STATION = ""
# "硬座",
# "无座",
# "动卧",
SET_TYPE = []
SET_TYPE = ["二等座"]
# 当余票小于乘车人,如果选择优先提交,则删减联系人和余票数一致在提交
# bool
IS_MORE_TICKET = True
# 乘车人(list) 多个乘车人ex:
# - "张三"
# - "李四"
# "张三",
# "李四"
TICKET_PEOPLES = []
# 12306登录账号
@ -52,7 +55,7 @@ IS_AUTO_CODE = True
# 设置2本地自动打码需要配置tensorflow和keras库3为云打码由于云打码服务器资源有限(为2h4C的cpu服务器),请不要恶意请求,不然只能关闭服务器
# ps: 请不要一直依赖云服务器资源,在此向提供服务器的"do it"同学表示感谢
AUTO_CODE_TYPE = 2
AUTO_CODE_TYPE = 3
# 邮箱配置,如果抢票成功,将通过邮件配置通知给您
# 列举163
@ -73,7 +76,7 @@ EMAIL_CONF = {
"notice_email_list": "",
"username": "",
"password": "",
"host": "",
"host": "smtp.qq.com",
}
# 是否开启 server酱 微信提醒, 使用前需要前往 http://sc.ftqq.com/3.version 扫码绑定获取 SECRET 并关注获得抢票结果通知的公众号
@ -86,7 +89,7 @@ SERVER_CHAN_CONF = {
IS_CDN = 1
# 下单接口分为两种1 模拟网页自动捡漏下单不稳定2 模拟车次后面的购票按钮下单(稳如老狗)
ORDER_TYPE = 2
ORDER_TYPE = 1
# 下单模式 1 为预售整点刷新刷新间隔0.1-0.5S, 然后会校验时间比如12点的预售那脚本就会在12.00整检票,刷新订单
# 2 是捡漏捡漏的刷新间隔时间为0.5-3秒时间间隔长不容易封ip
@ -104,11 +107,17 @@ IS_PROXY = 0
OPEN_TIME = "13:00:00"
# 1=使用selenium获取devicesID
# 2=使用网页端/otn/HttpZF/logdevice获取devicesId这个接口的算法目前可能有点问题如果登录一直302的请改为配置1
# 3=自己打开浏览器在headers-Cookies中抓取RAIL_DEVICEID和RAIL_EXPIRATION这个就不用配置selenium
COOKIE_TYPE = 1
# 如果COOKIE_TYPE=1则需配置chromeDriver路径,下载地址http://chromedriver.storage.googleapis.com/index.html
# chromedriver配置版本只要和chrome的大版本匹配就行
CHROME_PATH = ""
# 如果COOKIE_TYPE=1, 则需配置RAIL_EXPIRATION、RAIL_DEVICEID的值
RAIL_EXPIRATION = ""
RAIL_DEVICEID = ""
# 1=>为一直随机ua,2->只启动的时候随机一次ua
RANDOM_AGENT = 2
@ -116,12 +125,12 @@ PASSENGER_TICKER_STR = {
'一等座': 'M',
'特等座': 'P',
'二等座': 'O',
'商务座': "9",
'硬座': "1",
'无座': "1",
'软座': "2",
'软卧': "3",
'硬卧': "4",
'商务座': 9,
'硬座': 1,
'无座': 1,
'软座': 2,
'软卧': 4,
'硬卧': 3,
}
# 保护12306官网请求频率设置随机请求时间原则为5分钟不大于80次
@ -131,4 +140,4 @@ MAX_TIME = 5
MIN_TIME = 3
# 软件版本
RE_VERSION = "1.1.114"
RE_VERSION = "1.1.116"

View File

@ -30,6 +30,16 @@ def getDrvicesID(session):
print("cookie获取完成")
elif TickerConfig.COOKIE_TYPE is 2:
request_device_id(session)
elif TickerConfig.COOKIE_TYPE is 3:
# RAIL_DEVICEID,RAIL_EXPIRATION的值打开12306官网可以获取headers-Cookies
if not TickerConfig.RAIL_DEVICEID or TickerConfig.RAIL_EXPIRATION:
print("警告!!: RAIL_DEVICEID,RAIL_EXPIRATION的值为空请手动打开12306官网可以获取headers-Cookies中的RAIL_DEVICEID,RAIL_EXPIRATION填入配置文件中")
cookies = [{
"RAIL_DEVICEID": TickerConfig.RAIL_DEVICEID,
"RAIL_EXPIRATION": TickerConfig.RAIL_EXPIRATION,
}]
session.httpClint.set_cookies(cookies)
session.cookies = cookies
def request_device_id(session):

View File

@ -6,6 +6,7 @@ from config.TicketEnmu import ticket
from inter.CheckRandCodeAnsyn import checkRandCodeAnsyn
from inter.GetQueueCountAsync import getQueueCountAsync
from inter.GetRandCode import getRandCode
import TickerConfig
class autoSubmitOrderRequest:
@ -60,8 +61,8 @@ class autoSubmitOrderRequest:
data["train_date"] = self.train_date
data["tour_flag"] = "dc"
data["purpose_codes"] = "ADULT"
data["query_from_station_name"] = self.session.from_station
data["query_to_station_name"] = self.session.to_station
data["query_from_station_name"] = TickerConfig.FROM_STATION
data["query_to_station_name"] = TickerConfig.TO_STATION
data["cancel_flag"] = 2
data["bed_level_order_num"] = "000000000000000000000000000000"
data["passengerTicketStr"] = self.passengerTicketStr
@ -92,7 +93,7 @@ class autoSubmitOrderRequest:
toStationTelecode=self.query_to_station_name,
leftTicket=self.leftTicket,
set_type=self.set_type,
users=len(self.session.ticke_peoples),
users=len(TickerConfig.TICKET_PEOPLES),
station_dates=self.train_date,
passengerTicketStr=self.passengerTicketStr,
oldPassengerStr=self.oldPassengerStr,