1. 程式人生 > >Python3實現搶火車票功能(中)

Python3實現搶火車票功能(中)

導語

在“python搶火車票(上)”一文中我們完成了專案內容1和專案內容2,即利用python實現火車/高鐵票查詢功能以及利用python實現搶火車/高鐵票功能,對專案內容1和專案內容2進行優化。

開發工具

python版本:3.5.4(64bit)

chromedriver_win32版本:2.3.4

chrome版本:65.0.3298.4

相關模組:

requests模組、prettytable模組、splinter模組以及python自帶的一些基本模組。(相關模組均使用pip安裝即可)

主要改進:

(1)出發地和目的地cookie值自動生成,無需再手工查詢;

(2)將專案內容1和專案內容2功能進行合併;

(3)使用方式更加簡便與人性化;

(4)增加了搶票成功後語音提示功能;

(5)避免了更多由於使用者非法輸入引起的程式異常;

(6)增加了搶票成功後郵件提示功能,但由於郵件傳送容易失敗所以我將該部分程式碼註釋掉了,有需要者可自行修改(最後做成Demo時我會新增郵件提示功能的)。

具體原理請參考相關檔案中的原始碼,本人已進行了較為詳細的註釋。

環境搭建:

安裝python(新增到環境變數)並pip安裝相關的第三方庫,最後將相關檔案中提供的chromedriver.exe檔案放在python安裝資料夾中的Scripts資料夾內。

使用方式:

在cmd中執行後根據提示輸入相關資訊即可。

使用演示:

(1)查詢功能:

(2)搶票功能:

搶到票之後我們需要手動開啟12306官網或者官方APP在未完成訂單中進行支付後購票: