Max的城市售票網搶票機器人

軟體特色:

  • 急速搶票
    優化購票流程。
  • 自動填寫
    搶票不再手忙腳亂心慌慌。
  • 合法購票
    本系統僅代為填寫購票資訊,無任何入侵、取得、刪除或變更售票系統其電磁紀錄。
  • 多系統支援
    支援 Windows 和 Mac (Linux 請直接執行原始碼)
  • 無時間或次數限制
    如果官方網站沒有改版,可以在多台電腦且無使用時間或次數限制。
  • 無病毒/惡意/間碟程式
    開放程式的原始碼,在相依元件都安裝的環境下,原始碼檔案可以直接執行。

附註:

城市售票網賣票是在主網站,顯示錯誤訊息的伺服器不是在主網站上,而且會延遲才連回主網站,使用搶票機器人可以減少延遲,增加連回主網站的次數,進而增加買到票的機率。


檔案下載:

重要的附註:實際搶票前半小時(如果時間允許)或更新chrome版本後,請一定要先重開機一次,因為小弟程式沒寫好,架構上有記憶體漏失(Memory Leak)的已知問題。

原始碼:https://github.com/max32002/tixcraft_bot

Max搶票程式免費下載,自由捐款,捐款方式:
https://max-everyday.com/about/#donate

附註:目前軟體測試(QA)部門部門也只有Max一個人,所以新版本的程式可能測試不夠完成,也許會有錯誤或臭蟲(Bug)。


主要功能:

  • 1:「票價」、「購買數量」、「快速購票」自動化。
  • 2:「票價」可以使用關鍵字去自動點選。
  • 3:「購買數量」可以自動輸入想要的張數,張數可以參數調整。
  • 4:自動點擊「快速購票」。
  • 5:遇到網址是 busy.urbtix.hk 或 msg.urbtix.hk 改連到 www.urbtix.hk。

搶票建議:

  • 請先「手動」用滑鼠點選自己要買票的活動。
  • 請先登入購票系統的會員,以加速購票流程。展示影片目的是在示範不使用滑鼠的情況下透過機器人選取想購買的日期、票價和張數。
  • 門票的「限量」是很殘酷的,建議不要用破舊的電腦或連線不穩的手機網路來搶票,因為只要比別人慢個 0.1 秒,票可能就沒了。為了要搶到限量的票建議去網咖或找一個網路連線穩定且快的地方並使用硬體不差的電腦來搶票。如果在使用網咖或別人的別人的電腦,請先確定已經安裝了chrome瀏覽器並更新到最新版本。
  • 搶票機器人可能會因為搶票系統繁忙而比手動的慢,請勿過份依賴搶票機器人,在第一時間還是可能會需要使用滑鼠手動去點。
  • 搶票程式可能會執行到一半就掛掉,建議實際在搶票時,請開啟出2個瀏覽器,一個是透過搶票機器人。另一個是傳統無外掛手動去搶票,因為如果遇到「搶票的程式掛了」、「官方網站影示錯誤訊息是無連續坐位」或「官方網站改版」,還可以搶看看第二輪或清票。

使用方法:

1:請先確定電腦裡有安裝 chrome 瀏覽器。
2:請先確認您的 chrome 有更新或降低到到目前程式可以支援的指定版本。
附註:如果搶票機器人的自動化的腳本已經可以執行,請不要隨意升級chrome瀏覽器的版本,要升級chrome瀏覽器之前,請先檢查看看沒有和您你chrome瀏覽器相符的自動化的腳本可以下載,如果沒有的話,請再手動安裝指定版本的chrome瀏覽器。

太舊的 chrome 執行起來會有問題,請先更新chrome瀏覽器為最近的版本,更新方式為:「設定」->「關於Chrome」。


3:Windows用戶請先對zip檔進行「解壓縮」的動作,不能直接開啟壓縮檔,在預覽壓縮檔的環境下執行。MacOS用戶,點2下zip檔就可以取得MaxBot 的 app,點2下即可執行。
4:Windows用戶請執行「settings.exe」,進行設定後,再按 Run 開出一個搶票用的chrome 瀏覽器。

Windows用戶在解壓縮後,要找的檔案名稱是「settings.exe」 不是「.settings.exe」

macOS 的用戶請改點2下 MaxBot app .


城市售票網(urbtix)的搶票機器人,執行畫面:


改版記錄:

2019-09-23更新:

  • 針對urbtix的自動重導增加延遲,降低IP被鎖機率。
  • 更新 chromedriver 的元件的版本。

YouTube影片:Max的城市售票網搶票機器人(2019-08-17)
https://www.youtube.com/watch?v=m_sZCrNSEr8


YouTube影片:Max的城市售票網搶票機器人(2019-02-16)
https://www.youtube.com/watch?v=xL30suw97oM


參數設定檔說明:

附上一個小程式 settings.exe 來修改設定檔(settings.json),執行畫面如下:

目前主要的設定值是輸入票價(Area Keyword)和購買數量(Ticket Number)這2個
  • 說明1: 「Run」 的按鈕,按下後 就會去”存檔” 和 “執行” chrome_tixcraft.exe。每按一次 Run 都會開出一個獨立記憶體空間的chrome 瀏覽器。請記得在搶票前先登入好會員帳號,部份太熱門的活動,會因為太熱門而在開搶後無法登入會員。
  • 說明2:「Save」按鈕,會把設定值存檔。
  • 說明3:「Exit」按鈕,離開。

參數說明:

  • homepage“: 設定機器人一開始開出那一個網址。
  • browser“: 設定機器人用那一個瀏覽器,目前支援 “firefox” 和 “chrome”
  • ticket_number“: 設定票數
  • auto_press_next_step_button“: 設定要不要自動點擊「快速購票」。
  • auto_fill_ticket_number“: 設定自動輸入想要的票「張數」。要停用這個功能請取消勾選。
  • area_keyword“: 設定指定的票價或關鍵字,要注意,金額的格式需要和官方網站上的一致,官方有逗號的地方要一樣。
  • answer_dictionary“: 「答案字典」,當畫面彈出驗證問題時,使用字典裡的選項來回答驗證問題,理論上是亂槍打鳥,應該於事無補。分隔符號請使用半形的逗號(,)。

搶票機器人原理:

我是使用 python + selenium 來實作,除了python 程式語言可以使用 selenium,也可以用 c#, java, ruby, perl。參考看看我的心得:

Selenium 使用 Chrome 瀏覽器 webdriver
http://stackoverflow.max-everyday.com/2018/03/selenium-chrome-webdriver/


機器人程式是跨平台的,可以執行在 Linux / Mac OS / Windows 這 3個平台上。上面影片是使用 FireFox,除了使用 FireFox 瀏覽器也可以 Chrome 瀏覽器。


Q&A 常見問答:

Q:這程式可確保會搶到票嗎?
A:不會。

Q:MAX搶票程式該如何取得?
A:網頁最上面有附下載點,如果覺得程式對你有幫助,歡迎捐錢給我。程式的實作方法可以自行挑戰看看。
※捐錢後,程式的功能和沒捐錢的一樣,不一定要捐錢。祝你可以搶到理想中的門票。

Q:那下載程式後要怎麼操作,有教學嗎?不然怎麼使用?
A:有網頁說明和Youtube 影片。

Q:操做的問題都可請問您嗎?
A:可以。請先參考看看教學的文章。

Q:購買程式以後,是否執行上有問題都能請教您呢?
A:可以。請先參考看看教學的文章。

Q:所有購票系統都可以執行嗎?
A:沒有這麼神奇哦,只有特定的網站,而且網站一改版可能就無法使用。

Q:可以用永久嗎?
A:如果官方網站沒改版的話,可以一直使用。

Q:購買程式後,它能維持多久?直到不能用?還是你那邊會通知要更新了? 還是看訂票系統上會說已更新了?
A:官方的更新,要看異動程度,程度小改的話,可能還可以使用,我不確定程式可以用到何時。官方訂票系統上,不一定會寫已更新,官方的事情,我們一般民眾無法去干預。

Q:你都會一直更新嗎?
A:不一定會更新。

Q:若購買程式後,您有新功能或改版,能無限更新嗎?
A:沒有,因為不確定有沒有辦法更新,也許賣票的平台請到更厲害的工程師。

Q:若是遇到售票網頁改版,後續執行檔程式碼的更新是要重新購買,還是有其他的更新方式?
A:不確定有沒有辦法更新,也許賣票的平台請到更厲害的工程師。

Q:請問搶票程式不會被售票網擋下來嗎?
A:理論上擋的下來,目前還沒有擋,未來很難說。

Q:有包含之後維護嗎?
A:沒有。

Q:有電腦安裝數的限制嗎? (多台電腦OK?)
A:沒有限制。
附註:你可以取得並修改我所寫的程式碼,但是要讓Python程式碼可以執行,有前置條件,需要(1)安裝python,(2)安裝 pip, (3)安裝 selenium 套件,(4)下載 webdriver(或ChromeDriver) 到程式碼的資料夾下。

Q:只能用電腦嗎還是手機也可以?
A:只限電腦,並限定於 Windows/MacOS/Linux 平台。

Q:請問會包含使用說明嗎?
A:請參考看看網頁上附的資料,如果還有不懂的地方請與我聯絡,我會再補充和更新到網頁裡。

Q:想請問能否幫忙搶票?
A:沒有提供代搶票的服務,因為沒搶到票,不好意思跟你拿錢。萬一跟你拿了錢又沒搶到票,可能被說是我偷懶沒做事還收錢。

Q:可以直接幫我搶票嗎?
A:沒有提供代搶票的服務,因為沒搶到票,不好意思跟你拿錢。萬一跟你拿了錢又沒搶到票,可能被說是我偷懶沒做事還收錢。

Q:只求有票,怎麼設定比較好?
A:我也不清楚,我猜測也許關鍵字使用低票價的再使用隨機(random)方式選取,機率會高一點。

Q:我一直掛在購買票那邊,時間到會自己進去吧。
A:要自己按重新整理。

Q:關鍵字可以輸入「中英數」?
A:可以輸入中文/英文/符號和數字。

Q:我一直掛在購買票那邊,時間到會自己進去吧。
A:不會,需要自己手動按重新整理。

Q:Windows平台,顯示錯誤訊息:此檔案的版本與您執行的Windows版本不相容,請檢查電腦的系統資訊,判斷您需要x86(32 位元)或x64(64 位元)版本的程式,然後連線軟體發行者。
A:

1:目前程式是「只有」支援64 位元,理論上也是可以支援32 位元,所以如果你是32位元,請去借台64位元的電腦來搶票。

2:Windows用戶,請執行解開 zip 檔案後裡第一層目錄下的 settings.exe,而不是 .settings.exe 或 \_MACOSX\settings.exe。謝謝。

Q:Mac OS,按了 run 按鈕後,沒有反應
A:請幫忙執行下列的步驟,並提供最後終端機(Terminal,下指令視窗)的執行畫面。

Step 1:在 MaxBot.app 按右鍵,選 “Show Package Contents”

Step 2:點2下去開啟 “Contents” 目錄下的 “MacOS” 目錄下的 MaxBot 執行檔,喜歡按右鍵的朋友,也可以按右鍵再選”Open”。

Step 3:按下 Open 後的畫面如下,請提供按下 Run 按鈕後,終端機(Terminal,下指令視窗)的執行畫面。

Q:請問按下run能控制多個視窗?
A:每一個按下Run跑出來的視窗都是獨立的,需要一一去登入。

Q:run按幾次就跑出幾個視窗,是否只會執行最新出來的視窗?
A:每一個按下Run跑出來的視窗都是獨立的,每一個都會跑,每一個執行中的視窗可以使用不一樣的設定值。

Q:那如果我有兩個帳號可以買票,有辦法在同一台電腦run嗎?
A:可以。但實際上沒有辦法,因為拓元還有KKtix針對熱門的活動幾乎都會提問額外的問題,同一台電腦「作用中的視窗」都只有一個,所以沒有辦法「同時」去買票,只能依序買票,就是帳號1號買完,點帳號2號的視窗改用帳號2號來買,但熱門活動,錯過了第一時間搶票,買到票的機率很低。

Q:我想要搶鄧紫棋演唱會 “特一區”+”第1排11號.12號”那我能用你的程式去搶票嗎?(手動的一定會被淘汰.因為速度太慢.對吧)
A:不一定,要看運氣,理論上來說,使用程式去搶到票的機率可能只有高一點點而。參考下一個問題。第1排11號.12號,是手動選位,通常熱門的活動,都沒有開放手動選位,意思是,可以手動選位的活動,其實用不到搶票程式。

Q:我如果有指定要哪區域的第幾排的位子 是不是要手動選擇?
A:通常,可以自己挑位子的活動,不需要使用到搶票的程式,熱門活動都是電腦劃位。

Q:我是不是付費給你.你幫忙寫1個程式.進入自動挑選(特一區.第一排)這可行嗎?
A:不是,因為熱門活動,沒辦法選位。而且使用搶票程式也不一定能買到票。

Q:在購票的畫面,程式沒有自動跑,需要自己手動點,但是等到第二回,程式又可以自動跑,為什麼?
A:這估情況是可能發生的,目前程式需要網頁完全載入(loaded),在這情況下程式因為網頁元件都初始化完成了,程式腳本跑起來問題才會比較少,有些情況會造成購票的畫面已經都顯示出來了,但網頁有些圖片可能因為您被分流到的伺服器比較忙碌,有些圖片或元素還沒被下載完成,造成網頁的狀態還是「下載中」。針對這個可能的突發情況,建議您:

  • 搶票前:請先登入會員帳號,並先試買其他的活動,並取消,然後再回到準備要搶的活動頁面去重新整理頁面。
  • 搶票中:所以如果程式沒有自動跑的時候,請趕快自己手動去點。

Q:使用機器人腳本自動輸入欄位有機會會搶輸手動的嗎?
A:有些情況下,手動是可能比機器人腳本快。機器人腳本的原理是透過程式預先針對判斷網頁已出現的元素(element)來決定要自動操作網頁的項目是什麼,目前程式需要網頁完全載入(loaded),在這情況下程式因為網頁元件都初始化完成了,程式腳本跑起來問題才會比較少,缺點就是慢了一到二秒,另一方面在程式腳本在自動選票數、打勾同意和對焦到驗證碼的輸入框會比手動快,所以使用機器人和用手動搶票不會差太多,結論:當網頁完整載入速度比較慢的這個情況之下,機器人自動化腳本和手動搶票不會差很多,也有可能會搶輸手動;如果網頁載入速度快或一般的情況下,使用機器人腳本自動填值在理論上會比手動搶票快一到二秒。

Q:為什麼會卡在立即訂購的頁面5~6秒才跳進去選購頁面呢?是程式卡住了嗎?
A:有些情況下,手動是可能比機器人腳本快。參考上面的解答。遇到這個情況,請挑戰自行手動去搶票。

Q:它為什麼會自己選擇2張+會自己打勾?
A:因為有寫程式去自動輸入和打勾。參考實作原理:
http://stackoverflow.max-everyday.com/2018/03/selenium-chrome-webdriver/

Q:它為什麼驗證碼的框框點一下,讓鍵盤可以直接輸入。(我試過不會ㄚ)
A:因為有寫程式去點一下驗證碼的輸入框。參考實作原理:
http://stackoverflow.max-everyday.com/2018/03/selenium-chrome-webdriver/

Q:如果開售時網頁一直繁忙,程式是否會自動不斷嘗試進入直至成功?
A:目前程式「只有」下面 4個功能:
1:「票價」、「購買數量」、「快速購票」自動化。
2:「票價」可以使用關鍵字去自動點選。
3:「購買數量」可以自動輸入想要的張數,張數可以參數調整。
4:自動點擊「快速購票」。

Q:當我設定想購買的日期價格和數量,執行程式後我還需要手動做什麼嗎?
A:除了目前程式所提供的功能,其他都需要自己手動操作。

Q:付款的信用卡資訊是否輸要手動輸入?
A:除了目前程式所提供的功能,其他都需要自己手動操作。

Q:如果設定想購買的門票種類售罄,程式會自動輸換其他日期或價格嗎? 還是會停留在網頁待使用者自行再選。
A:會停留在網頁待使用者自行再選。


相關文章:

Max的拓元搶票機器人
http://max-everyday.com/2018/03/tixcraft-bot/

Max的KKTIX搶票機器人
http://max-everyday.com/2018/12/kktix-bot/

Max的FamiTicket搶票機器人
http://max-everyday.com/2019/01/maxbot-famiticket/

Max的cityline搶票機器人
http://max-everyday.com/2019/03/cityline-bot/

Max自動掛號機器人
http://max-everyday.com/2018/08/max-auto-reg-bot/

Max城市重導機器人
https://max-everyday.com/2019/05/max-urbtix-busy/

Max 學習 selenium
http://stackoverflow.max-everyday.com/tag/selenium/

Max搶票機器人Facebook:
https://www.facebook.com/maxbot.ticket/

Facebook網友回應

14 comments

    1. 軟體其實和手動搶票差不多。只是差在 CITILINE, 城市電腦售票網 的伺服器聽說不太強壯,太多人搶票時容易掛掉。

  1. 你好,剛試用了一下

    城市售票網,已按照教程使用關鍵字去自動點選票價,但依然是自動選擇了最貴的。
    而Cityline則直接無效,無論票數、票價、還是自動點擊「快速購票」,都無法使用。

寫留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *