Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
janlyn06
12306
提交
dba8fe0a
1
12306
项目概览
janlyn06
/
12306
通知
4
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
1
12306
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
dba8fe0a
编写于
9月 09, 2019
作者:
X
xianping.wen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
优化候补逻辑
version 1.1.108
上级
8db4252d
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
28 addition
and
15 deletion
+28
-15
TickerConfig.py
TickerConfig.py
+6
-10
Update.md
Update.md
+3
-0
config/urlConf.py
config/urlConf.py
+11
-0
init/select_ticket_info.py
init/select_ticket_info.py
+1
-1
inter/ConfirmHB.py
inter/ConfirmHB.py
+3
-2
inter/SubmitOrderRequest.py
inter/SubmitOrderRequest.py
+4
-2
未找到文件。
TickerConfig.py
浏览文件 @
dba8fe0a
...
@@ -6,21 +6,17 @@
...
@@ -6,21 +6,17 @@
# 刷票模式:1=刷票 2=候补+刷票
# 刷票模式:1=刷票 2=候补+刷票
TICKET_TYPE
=
2
TICKET_TYPE
=
2
# 候补最晚兑现日期,目前软件为捡漏加自动候补,所以这个值一定要填,并且这个日期一定要填小于最长订票时间(30天)
# 格式为日期+小时+分
# 举例: 比如今天才可以买10.1号的票,比如你那个发车是10.1号上午两点,你兑现时间写到10.1晚上22点?
# t("#fromDate").val() + "#" + t("#dafaultTime").html().replace("时", "") + "#" + t("#dafaultMinutes").html().replace("分", ""),
J_Z_PARAM
=
"2019-09-28#22#59"
# 出发日期(list) "2018-01-06", "2018-01-07"
# 出发日期(list) "2018-01-06", "2018-01-07"
STATION_DATES
=
[
STATION_DATES
=
[
"2019-09-
2
0"
"2019-09-
3
0"
]
]
# 填入需要购买的车次(list),"G1353"
# 填入需要购买的车次(list),"G1353"
STATION_TRAINS
=
[
STATION_TRAINS
=
[
""
,
""
,
""
,
]
]
# 出发城市,比如深圳北,就填深圳就搜得到
# 出发城市,比如深圳北,就填深圳就搜得到
FROM_STATION
=
""
FROM_STATION
=
""
...
@@ -50,6 +46,7 @@ IS_MORE_TICKET = True
...
@@ -50,6 +46,7 @@ IS_MORE_TICKET = True
# - "李四"
# - "李四"
TICKET_PEOPLES
=
[
TICKET_PEOPLES
=
[
""
,
""
,
""
,
]
]
# 12306登录账号
# 12306登录账号
...
@@ -110,11 +107,10 @@ IS_PROXY = 0
...
@@ -110,11 +107,10 @@ IS_PROXY = 0
# 预售放票时间, 如果是捡漏模式,可以忽略此操作
# 预售放票时间, 如果是捡漏模式,可以忽略此操作
OPEN_TIME
=
"13:00:00"
OPEN_TIME
=
"13:00:00"
# 1=使用selenium获取devicesID
# 1=使用selenium获取devicesID
# 2=使用网页端/otn/HttpZF/logdevice获取devicesId,这个接口的算法目前可能有点问题,如果登录一直302的请改为配置1
# 2=使用网页端/otn/HttpZF/logdevice获取devicesId,这个接口的算法目前可能有点问题,如果登录一直302的请改为配置1
COOKIE_TYPE
=
1
COOKIE_TYPE
=
1
# 如果COOKIE_TYPE=
2
,则需配置chromeDriver路径,下载地址http://chromedriver.storage.googleapis.com/index.html
# 如果COOKIE_TYPE=
1
,则需配置chromeDriver路径,下载地址http://chromedriver.storage.googleapis.com/index.html
# chromedriver配置版本只要和chrome的大版本匹配就行
# chromedriver配置版本只要和chrome的大版本匹配就行
CHROME_PATH
=
"/Users/wenxianping/Downloads/chromedriver"
CHROME_PATH
=
"/Users/wenxianping/Downloads/chromedriver"
...
@@ -131,4 +127,4 @@ PASSENGER_TICKER_STR = {
...
@@ -131,4 +127,4 @@ PASSENGER_TICKER_STR = {
}
}
# 软件版本
# 软件版本
RE_VERSION
=
"1.1.10
7
"
RE_VERSION
=
"1.1.10
8
"
Update.md
浏览文件 @
dba8fe0a
...
@@ -177,3 +177,6 @@
...
@@ -177,3 +177,6 @@
-
2019.09.07更新
-
2019.09.07更新
-
优化候补逻辑
-
优化候补逻辑
-
去除敏感信息打印
-
去除敏感信息打印
-
2019.09.09更新
-
优化候补逻辑
config/urlConf.py
浏览文件 @
dba8fe0a
...
@@ -562,6 +562,17 @@ urls = {
...
@@ -562,6 +562,17 @@ urls = {
"is_logger"
:
True
,
"is_logger"
:
True
,
"is_json"
:
True
,
"is_json"
:
True
,
},
},
"passengerInitApi"
:
{
# 排队
"req_url"
:
"/otn/afterNate/passengerInitApi"
,
"req_type"
:
"post"
,
"Referer"
:
"https://kyfw.12306.cn/otn/leftTicket/init"
,
"Host"
:
"kyfw.12306.cn"
,
"re_try"
:
10
,
"re_time"
:
0.01
,
"s_time"
:
0.01
,
"is_logger"
:
True
,
"is_json"
:
True
,
},
...
...
init/select_ticket_info.py
浏览文件 @
dba8fe0a
...
@@ -57,7 +57,7 @@ class select:
...
@@ -57,7 +57,7 @@ class select:
print
(
u
"*"
*
50
)
print
(
u
"*"
*
50
)
print
(
f
"检查当前版本为:
{
TickerConfig
.
RE_VERSION
}
"
)
print
(
f
"检查当前版本为:
{
TickerConfig
.
RE_VERSION
}
"
)
print
(
u
"检查当前python版本为:{},目前版本只支持3.6以上"
.
format
(
sys
.
version
.
split
(
" "
)[
0
]))
print
(
u
"检查当前python版本为:{},目前版本只支持3.6以上"
.
format
(
sys
.
version
.
split
(
" "
)[
0
]))
print
(
u
"12306刷票小助手,最后更新于2019.09.0
7
,请勿作为商业用途,交流群号:"
print
(
u
"12306刷票小助手,最后更新于2019.09.0
9
,请勿作为商业用途,交流群号:"
u
" 1群:286271084(已满)
\n
"
u
" 1群:286271084(已满)
\n
"
u
" 2群:649992274(已满)
\n
"
u
" 2群:649992274(已满)
\n
"
u
" 3群:632501142(已满)
\n
"
u
" 3群:632501142(已满)
\n
"
...
...
inter/ConfirmHB.py
浏览文件 @
dba8fe0a
...
@@ -5,7 +5,7 @@ from inter.GetQueueCount import queryQueueByAfterNate
...
@@ -5,7 +5,7 @@ from inter.GetQueueCount import queryQueueByAfterNate
class
confirmHB
:
class
confirmHB
:
def
__init__
(
self
,
secretList
,
session
,
tickerNo
):
def
__init__
(
self
,
secretList
,
session
,
tickerNo
,
jzdhDate
):
"""
"""
人脸识别
人脸识别
"""
"""
...
@@ -13,6 +13,7 @@ class confirmHB:
...
@@ -13,6 +13,7 @@ class confirmHB:
self
.
session
=
session
self
.
session
=
session
self
.
passengerTicketStrByAfterLate
=
session
.
passengerTicketStrByAfterLate
self
.
passengerTicketStrByAfterLate
=
session
.
passengerTicketStrByAfterLate
self
.
tickerNo
=
tickerNo
self
.
tickerNo
=
tickerNo
self
.
jzdhDate
=
jzdhDate
def
data_apr
(
self
):
def
data_apr
(
self
):
"""
"""
...
@@ -25,7 +26,7 @@ class confirmHB:
...
@@ -25,7 +26,7 @@ class confirmHB:
ticker
=
TickerConfig
.
PASSENGER_TICKER_STR
.
get
(
TickerConfig
.
SET_TYPE
[
0
])
ticker
=
TickerConfig
.
PASSENGER_TICKER_STR
.
get
(
TickerConfig
.
SET_TYPE
[
0
])
data
=
OrderedDict
()
data
=
OrderedDict
()
data
[
"passengerInfo"
]
=
self
.
passengerTicketStrByAfterLate
data
[
"passengerInfo"
]
=
self
.
passengerTicketStrByAfterLate
data
[
"jzParam"
]
=
TickerConfig
.
J_Z_PARAM
data
[
"jzParam"
]
=
self
.
jzdhDate
data
[
"hbTrain"
]
=
f
"
{
self
.
tickerNo
}
,
{
ticker
}
#"
data
[
"hbTrain"
]
=
f
"
{
self
.
tickerNo
}
,
{
ticker
}
#"
data
[
"lkParam"
]
=
""
data
[
"lkParam"
]
=
""
return
data
return
data
...
...
inter/SubmitOrderRequest.py
浏览文件 @
dba8fe0a
...
@@ -6,6 +6,7 @@ import TickerConfig
...
@@ -6,6 +6,7 @@ import TickerConfig
from
config.urlConf
import
urls
from
config.urlConf
import
urls
from
inter.CheckOrderInfo
import
checkOrderInfo
from
inter.CheckOrderInfo
import
checkOrderInfo
from
inter.ConfirmHB
import
confirmHB
from
inter.ConfirmHB
import
confirmHB
from
inter.PassengerInitApi
import
passengerInitApi
from
myException.ticketIsExitsException
import
ticketIsExitsException
from
myException.ticketIsExitsException
import
ticketIsExitsException
...
@@ -105,5 +106,6 @@ class submitOrderRequestByAfterNate:
...
@@ -105,5 +106,6 @@ class submitOrderRequestByAfterNate:
if
not
submitOrderRequestRsp
.
get
(
"status"
)
or
not
submitOrderRequestRsp
.
get
(
"data"
,
{}).
get
(
"flag"
):
if
not
submitOrderRequestRsp
.
get
(
"status"
)
or
not
submitOrderRequestRsp
.
get
(
"data"
,
{}).
get
(
"flag"
):
print
(
""
.
join
(
submitOrderRequestRsp
.
get
(
"messages"
))
or
submitOrderRequestRsp
.
get
(
"validateMessages"
))
print
(
""
.
join
(
submitOrderRequestRsp
.
get
(
"messages"
))
or
submitOrderRequestRsp
.
get
(
"validateMessages"
))
return
return
confirm
=
confirmHB
(
self
.
secretList
,
self
.
session
,
self
.
tickerNo
)
pApi
=
passengerInitApi
(
self
.
session
,
self
.
secretList
,
self
.
tickerNo
)
confirm
.
sendChechFace
()
pApi
.
sendPassengerInitApi
()
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录