<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          火了!開(kāi)源的Python搶票神器,過(guò)年回家就看這一波了!

          共 2149字,需瀏覽 5分鐘

           ·

          2021-01-11 16:21

          大家好,我是早起。

          春運(yùn)即將到來(lái),搶票回家又該提上日程了!在Github上也有很多優(yōu)秀的開(kāi)發(fā)者開(kāi)源了一些基于Python的搶票項(xiàng)目,比如一直很火的12306/py12306,目前已經(jīng)累計(jì)超40k Star!

          但如果你嘗試使用,會(huì)發(fā)現(xiàn)由于12306的驗(yàn)證碼機(jī)制升級(jí),這兩個(gè)項(xiàng)目的登陸模塊都掛掉了,大概去年十月就已經(jīng)不能使用。

          but不慌,經(jīng)過(guò)一番探索,我找到了一個(gè)還能完美使用的搶票項(xiàng)目,并聯(lián)系到開(kāi)發(fā)者@罐子里的茶呢,了解到只要對(duì)登陸模塊的一些接口地址進(jìn)行變更,以及對(duì)部分參數(shù)的獲取邏輯進(jìn)行調(diào)整,就能重新盤(pán)活Python搶票項(xiàng)目12306,地址如下

          https://github.com/gzldc/12306

          本文就將基于該項(xiàng)目詳細(xì)的指導(dǎo)大家如何快速使用Python搶票,順利回家!開(kāi)始之前我們需要了解一下整體搶票思路

          下載與依賴(lài)安裝

          運(yùn)行本項(xiàng)目之前需要將你的Python升級(jí)到Python3.6或者更高版本,我是Python3.8沒(méi)有問(wèn)題。首先用git將原項(xiàng)目代碼拉下來(lái)

          git?clone?https://github.com/gzldc/12306.git

          或者直接下載壓縮包并解壓

          解壓完的目錄應(yīng)該如下

          之后啟動(dòng)終端/命令行(Mac/Win),并cd進(jìn)入項(xiàng)目目錄,執(zhí)行如下代碼安裝相關(guān)依賴(lài)

          pip?install?-r?requirements.txt

          需要注意的是,如果下載速度過(guò)慢可以切換源來(lái)解決,親測(cè)使用阿里云鏡像是速度最快的

          https://mirrors.aliyun.com/pypi/simple

          關(guān)于安裝各種庫(kù)本文不是本文介紹的重點(diǎn),總之requirements.txt依賴(lài)庫(kù)必須正確被安裝,如果出現(xiàn)任何安裝上的問(wèn)題,請(qǐng)自行百度。

          獲取登陸信息

          之前我們說(shuō)到,GitHub排名第一第二的12306搶票項(xiàng)目掛掉的原因都是在登陸驗(yàn)證碼沒(méi)法處理上,但我們現(xiàn)在使用的項(xiàng)目并不是使用用戶(hù)名與密碼管理賬戶(hù),只需要在登陸時(shí)提取自己賬戶(hù)的相關(guān)cookie字段即可,可以按照以下步驟進(jìn)行。

          首先打開(kāi)12306官網(wǎng),進(jìn)入登陸頁(yè)面并按下F12,并選擇Network

          之后輸入賬號(hào)密碼驗(yàn)證碼點(diǎn)擊登陸,之后點(diǎn)擊XHR

          如上圖指示,找到uamauthclient數(shù)據(jù)包進(jìn)入并點(diǎn)擊Cookies,之后按照下圖的指示記錄下tk、RAIL_EXPIRATIONRAIL_DEVICEID三個(gè)字段的value,復(fù)制下來(lái)保存好,待會(huì)要用到

          到這里就成功拿到了12306校驗(yàn)我們身份的關(guān)鍵信息,讓我們繼續(xù)。

          配置搶票信息

          現(xiàn)在回到項(xiàng)目目錄,打開(kāi)目錄下的TickerConfig.py進(jìn)行配置,里面有很多字段大家可以自行查看說(shuō)明與配置,本文僅介紹部分關(guān)鍵字段。

          首先你需要修改53-55行的三個(gè)變量值,替換為我們剛剛保存的tkRAIL_EXPIRATION、RAIL_DEVICEID三個(gè)字段的value,這一步非常重要,因?yàn)槭褂帽卷?xiàng)目無(wú)需輸入賬號(hào)密碼,就靠這三個(gè)參數(shù)下單

          之后如下圖修改乘車(chē)人、車(chē)次、出行日期等相關(guān)信息,這部分自行填寫(xiě),不多解釋了

          到這里我們就可以直接使用了,當(dāng)然你還可以繼續(xù)按照這個(gè)模版文件說(shuō)明對(duì)CDN加速、代理ip、搶票模式等設(shè)置進(jìn)行調(diào)整,最后保存退出即可。

          啟動(dòng)項(xiàng)目

          最后讓我們啟動(dòng)項(xiàng)目開(kāi)始搶票,回到終端/命令行。執(zhí)行如下代碼開(kāi)啟CDN加速

          python3?run.py?c

          之后掛在后臺(tái),重新打開(kāi)一個(gè)終端/命令行并進(jìn)入項(xiàng)目目錄,執(zhí)行下面代碼開(kāi)始搶票

          python3?run.py?r

          如上圖所示,不出意外的話就會(huì)輸出一大堆日志,我選擇的是杭州去蕪湖的票,因?yàn)橛杏嗥?,所以就沒(méi)有進(jìn)入搶票模式,直接就下單待支付了

          回到12306,點(diǎn)開(kāi)我的訂單發(fā)現(xiàn)有一張票躺在那里待支付,說(shuō)明一切從登陸到下單所有功能都是可以正常使用的!

          一些說(shuō)明

          因?yàn)闀r(shí)間關(guān)系,我沒(méi)有在搶票模式模式下進(jìn)一步測(cè)試,在和項(xiàng)目作者以及部分群友交流后,再說(shuō)明幾點(diǎn)方便大家使用

          • 如果在Windows下安裝tensorflow失敗,可以適當(dāng)降低版本或者升高版本都是可以的(1.14.0rc\1.14.0rc\1.15.0\1.15.0rc均可)
          • 啟動(dòng)項(xiàng)目時(shí)的CDN加速不是必須的,你可以選擇不啟動(dòng)即直接執(zhí)行python3 run.py r
          • tk等登陸cookies信息可能有一定時(shí)效性,所以可能需要定時(shí)檢查一下
          • 如果是候補(bǔ)車(chē)票,需要通過(guò)人證一致性核驗(yàn)的用戶(hù)及激活的“鐵路暢行”會(huì)員可以提交候補(bǔ)需求,需要按照操作說(shuō)明在鐵路12306app上完成人證核驗(yàn)。
          • 軟件為全自動(dòng)候補(bǔ)加撿漏,如果軟件候補(bǔ)成功則會(huì)停止搶票,發(fā)出郵件通知,但是不會(huì)影響你繼續(xù)撿漏,如果這個(gè)時(shí)候撿漏撿到的話,也是可以付款成功的,也就是說(shuō),撿漏+候補(bǔ)模式可以最大程度提升搶票成功率

          最后,如果GitHub下載源碼速度慢,你可以在公眾號(hào)「早起Python」后臺(tái)回復(fù)12306獲取百度云下載鏈接,如果你看上面的使用步驟有些吃力,可以點(diǎn)擊下方小程序觀看b站up主@罐子里的茶呢制作的視頻,手把手教你搶票

          -END-


          瀏覽 73
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲高清无码视频在线免费观看 | 午夜成人免费网站 | 国产亚洲色婷婷99 | 国产高清视频在线播放 | 亚洲最大中文在线 |