github精選前文傳送門:
01 還擔心春節搶不到票?
每逢佳節搶票難,難不倒程序員,代碼走一走,去哪兒的票都能搶到手!
每次過節的時候,都有過搶票的經歷,記得兩年前還有人等待開始發售春節的票時,蹲點搶,好辛苦的感覺。這不程序員就很不開心,沒有什麼事能夠阻止得了程序員的,幹就完事了。最近GitHub上面就有兩個異常火爆的項目,都是用Python來搶12306的車票的工具。
廢話不多說,先把github地址放上
- 12306項目地址:
https://github.com/testerSunshine/12306 - py12306項目地址:
https://github.com/pjialin/py12306/
02 testerSunshine/12306
https://github.com/testerSunshine/12306
目前已經start接近20.4萬,fork6.5k,還會繼續上漲!
是一位叫文賢平的程序員,項目名稱很有檔次,直接明瞭,就叫“12306”,功能一直在更新,2018年初開始提交,最近的一次提交是幾天前,看得出很用心。
流程圖畫的很清晰明瞭,從查詢餘票開始,到付款完成,最後獲取訂單號。一氣呵成,不怕人類手速太慢。技術原理其實是沒什麼說的,
懂爬蟲的人都知道,實質上就是用程序模擬人的行爲去查詢餘票、提交坐席下單就可以了。不過對比人的話,畢竟是程序,你可以設置它一直不停的在查詢餘票。這方面人是沒法比的。當然其中的難度肯定是有的,不然阿貓阿狗都能衝榜!
這很可能是全 GitHub 最德高望重的購票小助手了,現在功能一直在更新,且已支持 Python 3.6 以上版本。
python版本
- 2.7.10 - 2.7.15
- 3.6 - 3.7.4
- 2.7.9
已有功能
- 自動打碼
- 自動登錄
- 準點預售和撿漏
- 智能候補
- 郵件通知
- server醬通知
目錄對應說明
- agency - cdn代理
- config - 項目配置
- verify - 自動打碼
- init - 項目主運行目錄
- inter - 接口
- myException - 異常
- myUrllib request網絡請求庫
日誌例子
成功log,如果是購票失敗的,請帶上失敗的log給我,我盡力幫你調,也可加羣一起交流,程序只是加速買票的過程,並不一定能買到票
正在第355次查詢 乘車日期: 2018-02-12 車次G4741,G2365,G1371,G1377,G1329 查詢無票 代理設置 無 總耗時429ms
車次: G4741 始發車站: 上海 終點站: 邵陽 二等座:有
正在嘗試提交訂票...
嘗試提交訂單...
出票成功
排隊成功, 當前餘票還剩餘: 359 張
正在使用自動識別驗證碼功能
驗證碼通過,正在提交訂單
提交訂單成功!
排隊等待時間預計還剩 -12 ms
排隊等待時間預計還剩 -6 ms
排隊等待時間預計還剩 -7 ms
排隊等待時間預計還剩 -4 ms
排隊等待時間預計還剩 -4 ms
恭喜您訂票成功,訂單號爲:EB52743573, 請立即打開瀏覽器登錄12306,訪問‘未完成訂單’,在30分鐘內完成支付!
03 pjialin/py12306
https://github.com/pjialin/py12306/
其實說起來這第二個項目是在第一個項目的基礎之上做的,所以第一個項目有的功能,第二個項目都有。但是第二個項目的一些功能某程度上比第一個項目更加強大一些。
目前有6500+ start,fork1600+次,持續上漲中…
一位名叫pjialin的程序員,借鑑了文先森的部分代碼實現,開發了一個分佈式工具,名叫py12306購票助手。
就是說,一臺機器搶不到,可以讓許多硬件一起跑。
它還支持多任務 (多班列車) 、多日期、多賬號一起查。
另一個機智的功能是,同時觀察多個始發站和到達站的組合。
我舉個例子,我是從北京出發去南京,中間路過山東德州。可能直接從北京到南京的車票沒有了,但是從北京到德州的票還有,我就可以買從北京到德州的票,然後上車之後補票,補票到南京。
現在大部分搶車軟件以及12306是不支持這種一鍵自動查詢的,但是這個搶票的項目就支持這樣的操作。
項目作者說,試過文先森的算法和bypass12306,未果,這才做出了自己的搶票工具。
用上這個新工具,他一下子搶到了好幾張票。
web端管理界面
推薦這兩個項目的目的原因也是有倆:
第一是希望大家真的能通過這個軟件搶到票,當然其實你也是可以選擇攜程那些搶票軟件來的,因爲他們的服務器更牛逼,搶票的可能性會更大。(非人命幣玩家勿擾)
第二個目的呢當然是希望大家能夠學習一下別人的代碼,這項目還是挺牛逼的,驗證碼啥的都能搞定。
最後推薦一個拿來就乾的搶票工具“bypass(分流搶票)",並不是開源的,點擊直接運行就可以。
04 bypass(分流搶票)
作者:Cheney.小風,基於微軟.Net開發的搶火車票程序。
適用平臺:Windows電腦端
雖然現在手機上現在已經有很多的購票軟件,並且都有搶票功能,但是面對購票高峯期,手機購票軟件的搶票能力總是差強人意。(人命幣玩家)
所以推薦這款軟件:支持自動搶票、自動識別驗證碼、穩定撿漏,實時掛單,全自動檢索系統餘票交換等多種功能
前身是大二時歷時一月開發的程序,幾經風霜,經過了幾年的時間不斷的優化和更新迭代,時至今日,還在不斷的維護當中,不忘初心。
一位有情懷主義的程序員,最近一次更新在9月16號
最新版本 1.13.64
更新內容
- 1、增加微信通知,重做並更換新方式
- 2、增加自動支付在部分系統的兼容性
- 3、增加系統瀏覽器不正常時自動修復
- 4、修正幾分鐘提醒一次行程衝突問題
- 5、修正可能出現重複登錄的隱患問題
- 6、修正部分用戶查詢起售異常的問題
作者信息:
【文章信息】:作者-張林:原文鏈接-https://zhanglin.blog.csdn.net/article/details/103655685
【原創公衆號】:dotNet全棧開發。文章目錄
版權聲明:本文爲CSDN博主「dotNet全棧開發」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。