今年你不妨自己寫一段代碼來?yè)尰丶业幕疖嚻?,是不是很Cool。
準(zhǔn)備工具:
12306網(wǎng)站用戶名和密碼
Python 2.7
chrome瀏覽器及下載chromedriver
下載Python代碼
代碼用的Python+Splinter開發(fā),Splinter是一個(gè)使用Python開發(fā)的開源Web應(yīng)用測(cè)試工具,它可以幫你實(shí)現(xiàn)自動(dòng)瀏覽站點(diǎn)和與其進(jìn)行交互。Splinter執(zhí)行的時(shí)候會(huì)自動(dòng)打開你指定的瀏覽器,訪問指定的URL。然后你所開發(fā)的模擬的任何行為,都會(huì)自動(dòng)完成,你只需要坐在電腦面前,像看電影一樣看著屏幕上各種動(dòng)作自動(dòng)完成然后收集結(jié)果即可。
了解原理:
找到相應(yīng)URL,找到控件模擬登錄、查詢、訂票操作。關(guān)鍵是找到控件名稱,難點(diǎn)是起始地不是直接輸入的頁(yè)面值,需要在cookie中查出。
12306查詢URL:
12306登錄URL:
我的12306URL:
購(gòu)票確認(rèn)URL:
Python代碼打開URL,找到控件填充值:


找到用戶名密碼控件名

找到起始地控件名
確定起始地的值,方法Chrome瀏覽器中的“檢查”功能(按F12),Network ---> Cookies中找到:

cookie中起始地的值
拷貝起始地的cookie值,我把幾個(gè)常用的城市拷出來,放到了字典中:

查詢車票代碼:

其實(shí),你只需要運(yùn)行代碼:

當(dāng)然,還需要手動(dòng)點(diǎn)一下的還是萬惡的12306驗(yàn)證碼,搶到票后確認(rèn)支付就行啦。

搶票進(jìn)行中

搶票成功!
-
代碼
+關(guān)注
關(guān)注
30文章
4968瀏覽量
73999 -
python
+關(guān)注
關(guān)注
57文章
4877瀏覽量
90071
原文標(biāo)題:100行Python代碼自動(dòng)搶火車票!
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
今年春節(jié),你還搶票回家嗎?
2018年春運(yùn)火車票開售 代售點(diǎn)門市冷清
新版火車票二維碼防偽技術(shù)
火車票學(xué)生優(yōu)惠卡防偽系統(tǒng)設(shè)計(jì)
無線射頻技術(shù)植入火車票 以提高防偽和自動(dòng)售檢功能
python代碼示例之基于Python的日歷api調(diào)用代碼實(shí)例
12306火車票搶票軟件應(yīng)用程序免費(fèi)下載
再見了紙質(zhì)火車票,中鐵:明年電子客票將全國(guó)使用
教大家如何用Python搶火車票!
利用Python代碼自動(dòng)搶火車票的原理以及代碼解析
評(píng)論