GitHub搶票小助手12306,成功幫我搶到回家的票

網(wǎng)路搶票小助手12306智能刷票危纫,訂票宗挥,想著Down下來操作一波看看效果。
查看官網(wǎng)种蝶,按照官網(wǎng)教程一步步操作:

1 安裝最新版本python

官網(wǎng)支持python3.6以上契耿,查看Mac系統(tǒng)自帶的python版本
python -V
Version為2.7,如何安裝最新的python版本呢螃征?
搜索一下是否已經(jīng)存在python3的包:
brew search python3
已經(jīng)存在搪桂,直接安裝:
brew install python3
Mac設置當前系統(tǒng)的默認版本修改為3.*版本

查找python3安裝路徑
brew info python3
修改 Mac 系統(tǒng)配置文件
vi ~/.bash_profile
添加配置信息
alias python="/usr/local/bin/python3"
編譯系統(tǒng)配置文件
source ~/.bash_profile
系統(tǒng)當前的python版本。
python -V

ok,python3最新包安裝完成踢械。

2 下載源碼

源碼下載地址:https://github.com/testerSunshine/12306.git

3 安裝方法x

命令:pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

這里多試幾次酗电,我試了很多次,差點放棄内列。
安裝過程中用到遇到了一個坑撵术,提示


image.png

解決方案:

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt --user ## 加上--user問題解決

4 修改配置文件

設置你的出發(fā)地,目的地還有乘車人姓名话瞧,車次以及座位
找到源碼目錄嫩与,找到TickerConfig.py文件,一定要查看配置文件中的每個配置項的含義交排,這里貼出來我的配置項:

# -*- coding=utf-8 -*-
# 關于軟件使用配置說明划滋,一定要看!0Bā处坪!
# ps: 如果是候補車票,需要通過人證一致性核驗的用戶及激活的“鐵路暢行”會員可以提交候補需求架专,請您按照操作說明在鐵路12306app.上完成人證核驗
# 關于候補了之后是否還能繼續(xù)撿漏的問題在此說明: 軟件為全自動候補加撿漏稻薇,如果軟件候補成功則會停止搶票,發(fā)出郵件通知胶征,但是不會影響你繼續(xù)撿漏塞椎,
# 如果這個時候撿漏撿到的話,也是可以付款成功的睛低,也就是說案狠,撿漏+候補,可以最大程度提升搶票成功率

# 刷票模式:1=刷票 2=候補+刷票
TICKET_TYPE = 2

# 出發(fā)日期(list) "2018-01-06", "2018-01-07"
STATION_DATES = [
    "2020-01-20"
]

# 填入需要購買的車次(list)钱雷,"G1353"
# 修改車次填入規(guī)則骂铁,注:(以前設置的車次邏輯不變),如果車次填入為空罩抗,那么就是當日乘車所有車次都納入篩選返回
# 不填車次是整個list為空才算,如果不是為空套蒂,依然會判斷車次的,這種是錯誤的寫法 [""], 正確的寫法 []
STATION_TRAINS = ["T289"]

# 出發(fā)城市操刀,比如深圳北,就填深圳就搜得到
FROM_STATION = "北京西"

# 到達城市 比如深圳北骨坑,就填深圳就搜得到
TO_STATION = "許昌"

# 座位(list) 多個座位ex:
# "商務座",
# "一等座",
# "二等座",
# "特等座",
# "軟臥",
# "硬臥",
# "硬座",
# "無座",
# "動臥",
SET_TYPE = ["硬臥"]

# 當余票小于乘車人撼嗓,如果選擇優(yōu)先提交,則刪減聯(lián)系人和余票數(shù)一致在提交
# bool
IS_MORE_TICKET = True

# 乘車人(list) 多個乘車人ex:
# "張三",
# "李四"
TICKET_PEOPLES = ["xxx"]

# 12306登錄賬號
USER = "xxx@sina.cn"
PWD = "xxxxxx"

# 加入小黑屋時間默認為5分鐘,此功能為了防止僵尸票導致一直下單不成功錯過正常的票
TICKET_BLACK_LIST_TIME = 5

# 自動打碼
IS_AUTO_CODE = True

# 設置2本地自動打碼粉捻,需要配置tensorflow和keras庫,3為云打碼斑芜,由于云打碼服務器資源有限(為2h4C的cpu服務器),請不要惡意請求押搪,不然只能關閉服務器
# ps: 請不要一直依賴云服務器資源,在此向所有提供服務器同學表示感謝
AUTO_CODE_TYPE = 2

# 此處設置云打碼服務器地址浅碾,如果有自建的服務器大州,可以自行更改
HOST = "120.77.154.140:8000"
REQ_URL = "/verify/base64/"
HTTP_TYPE = "http"
# HOST="12306.yinaoxiong.cn" #備用服務器穩(wěn)定性較差
# REQ_URL="/verify/base64/"
# HTTP_TYPE="https"

#  郵箱配置,如果搶票成功垂谢,將通過郵件配置通知給您
#  列舉163
#  email: "xxx@163.com"
#  notice_email_list: "123@qq.com"
#  username: "xxxxx"
#  password: "xxxxx
#  host: "smtp.163.com"
#  列舉qq  ,qq設置比較復雜根暑,需要在郵箱-->賬戶-->開啟smtp服務,取得授權碼==郵箱登錄密碼
#  email: "xxx@qq.com"
#  notice_email_list: "123@qq.com"
#  username: "xxxxx"
#  password: "授權碼"
#  host: "smtp.qq.com"
EMAIL_CONF = {
    "IS_MAIL": True,
    "email": "782480917@qq.com",
    "notice_email_list": "",
    "username": "",
    "password": "",
    "host": "smtp.qq.com",
}

# 是否開啟 server醬 微信提醒排嫌, 使用前需要前往 http://sc.ftqq.com/3.version 掃碼綁定獲取 SECRET 并關注獲得搶票結果通知的公眾號
SERVER_CHAN_CONF = {
    "is_server_chan": False,
    "secret": ""
}

# 是否開啟cdn查詢缰犁,可以更快的檢測票票 1為開啟,2為關閉
IS_CDN = 1

# 下單接口分為兩種帅容,1 模擬網(wǎng)頁自動撿漏下單(不穩(wěn)定)颇象,2 模擬車次后面的購票按鈕下單(穩(wěn)如老狗)
ORDER_TYPE = 2

# 下單模式 1 為預售并徘,整點刷新,刷新間隔0.1-0.5S, 然后會校驗時間蕴茴,比如12點的預售,那腳本就會在12.00整檢票姐直,刷新訂單
#         2 是撿漏,撿漏的刷新間隔時間為0.5-3秒简肴,時間間隔長,不容易封ip
ORDER_MODEL = 1

# 是否開啟代理, 0代表關閉, 1表示開始
# 開啟此功能的時候請確保代理ip是否可用佣渴,在測試放里面經(jīng)過充分的測試初斑,再開啟此功能,不然可能會耽誤你購票的寶貴時間
# 使用方法:
# 1见秤、在agency/proxy_list列表下填入代理ip
# 2、測試UnitTest/TestAll/testProxy 測試代理是否可以用
# 3鹃答、開啟代理ip
IS_PROXY = 0

# 預售放票時間, 如果是撿漏模式,可以忽略此操作
OPEN_TIME = "12:59:57"
# 1=使用selenium獲取devicesID
# 2=使用網(wǎng)頁端/otn/HttpZF/logdevice獲取devicesId测摔,這個接口的算法目前可能有點問題,如果登錄一直302的請改為配置1
# 3=自己打開瀏覽器在headers-Cookies中抓取RAIL_DEVICEID和RAIL_EXPIRATION浙于,這個就不用配置selenium
COOKIE_TYPE = 3
# 如果COOKIE_TYPE=1挟纱,則需配置chromeDriver路徑,下載地址http://chromedriver.storage.googleapis.com/index.html
# chromedriver配置版本只要和chrome的大版本匹配就行
CHROME_PATH = "/usr/src/app/chromedriver"

# 為了docker37 準備的環(huán)境變量,windows環(huán)境可以不用管這個參數(shù)
CHROME_CHROME_PATH = "/opt/google/chrome/google-chrome"

# 如果COOKIE_TYPE=3, 則需配置RAIL_EXPIRATION紊服、RAIL_DEVICEID的值
RAIL_EXPIRATION = "xxx"
RAIL_DEVICEID = "xxx"
# RAIL_EXPIRATION = "1577034103293"
# RAIL_DEVICEID = "CDno29Erc_Pf3FSXb4dzq-Op64EhWrsi5yUZKVIKR1MAfYo2qFlCeXD8VkexY7_1qg-ClV-fE8j9jgVlPZxRh3wVc2iqLe_5A8sdr62qZx4B22JPF8lFCjpgTKZ5ODW90HJd5tiQsJ1KR9nOqHRxHj1FT5LEIwfw"


# 1=>為一直隨機ua,2->只啟動的時候隨機一次ua
RANDOM_AGENT = 2

PASSENGER_TICKER_STR = {
    '一等座': 'M',
    '特等座': 'P',
    '二等座': 'O',
    '商務座': 9,
    '硬座': 1,
    '無座': 1,
    '軟座': 2,
    '軟臥': 4,
    '硬臥': 3,
}

# 保護12306官網(wǎng)請求頻率,設置隨機請求時間围苫,原則為5分鐘不大于80次
# 最大間隔請求時間
MAX_TIME = 3
# 最小間隔請求時間
MIN_TIME = 1

# 軟件版本
RE_VERSION = "1.2.004"

這里需要說明一點,如何獲取RAIL_EXPIRATION跟RAIL_DEVICEID的值呢拧揽?
屬性COOKIE_TYPE = 3 我設置的值為3

# 1=使用selenium獲取devicesID
# 2=使用網(wǎng)頁端/otn/HttpZF/logdevice獲取devicesId腺占,這個接口的算法目前可能有點問題淤袜,如果登錄一直302的請改為配置1
# 3=自己打開瀏覽器在headers-Cookies中抓取RAIL_DEVICEID和RAIL_EXPIRATION衰伯,這個就不用配置selenium
COOKIE_TYPE = 3
# 如果COOKIE_TYPE=3, 則需配置RAIL_EXPIRATION、RAIL_DEVICEID的值
RAIL_EXPIRATION = ""
RAIL_DEVICEID = ""

準備工作就緒烦周,開始搶票尽爆。

5 啟動前請先篩選cdn读慎,這點很重要

python3 run.py c

6 啟動服務

python3 run.py r

完美,貼張圖幅狮,目前還在搶票中


image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末株灸,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子慌烧,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捆交,死亡現(xiàn)場離奇詭異,居然都是意外死亡玄括,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進店門肉瓦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人哪雕,你說我怎么就攤上這事∷购浚” “怎么了挨厚?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長疫剃。 經(jīng)常有香客問我,道長牲阁,這世上最難降的妖魔是什么固阁? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任您炉,我火速辦了婚禮,結果婚禮上赚爵,老公的妹妹穿的比我還像新娘。我一直安慰自己冀膝,他們只是感情好霎挟,可當我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著酥夭,像睡著了一般赐纱。 火紅的嫁衣襯著肌膚如雪熬北。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天起胰,我揣著相機與錄音巫延,去河邊找鬼效五。 笑死炉峰,一個胖子當著我的面吹牛,可吹牛的內容都是我干的疼阔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼谱仪,長吁一口氣:“原來是場噩夢啊……” “哼否彩!你這毒婦竟也來了?” 一聲冷哼從身側響起列荔,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤枚尼,失蹤者是張志新(化名)和其女友劉穎砂吞,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蜻直,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年呼巷,在試婚紗的時候發(fā)現(xiàn)自己被綠了赎瑰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡餐曼,死狀恐怖,靈堂內的尸體忽然破棺而出集惋,到底是詐尸還是另有隱情,我是刑警寧澤芋膘,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布霸饲,位于F島的核電站臂拓,受9級特大地震影響厚脉,放射性物質發(fā)生泄漏胶惰。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一中捆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧泄伪,春花似錦、人聲如沸蟋滴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至尔苦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間凌净,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工冰寻, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留皿渗,地道東北人斩芭。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓划乖,卻偏偏與公主長得像,于是被迫代替她去往敵國和親琴庵。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,713評論 2 354