Max的FamiTicket搶票機器人

軟體特色:

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

檔案下載:

目前有2種執行MaxBot 的方式, 1:程式碼, 2: 執行檔。目前只有 Windows 平台才有提供執行檔。

Windows 的執行檔下載:
https://github.com/max32002/tixcraft_bot/releases

.zip 壓縮檔案說明:

  1. chrome_tixcraft_xxoo.zip
    • 適用於:Windows 平台。
    • 執行方式:執行 settings.exe 應用程式。
    • 附註:請在 zip 檔按右鍵,選「解壓縮全部…」完整地解壓縮zip檔案,而不是直接點2下的開啟zip 檔。

透過原始碼在macOS 上執行MaxBot, 教學影片: https://youtu.be/HpVG91j0lbI

新的 Arm 架構CPU (M1/M2) 的 Mac 電腦,需要參考這篇作法,模擬執行環境為 INTEL CPU:
https://github.com/max32002/tixcraft_bot/issues/82

以Linux 虛擬主機來示範搶票:
https://max-everyday.com/2023/11/buy-ticket-by-vm
附註:在 Windows / macOS / Linux 平台裡的 python 操作方式幾乎相同。

下載檔案前,建議將你的 chrome 瀏覽器升級到最新的版本。更新chrome瀏覽器的方式是:「設定」->「關於Chrome」,這時候,通常就會自動更新chrome 瀏覽器為新的版本。

目前的搶票機器人不需要另外再下載「瀏覽器元件」(ChromeDriver),除非是發生特例的異常情況,才需要人工手動去下載 ChromeDriver。手動下載請參考:
https://max-everyday.com/2023/11/maxbot-troubleshooting/#chromedriver

Max搶票機器人原始碼:
https://github.com/max32002/tixcraft_bot

附註:

  • KKTIX/拓元/ibon … 售票的網站所用的搶票機器人是同一個程式。
  • 目前搶票程式沒有寫的很好,執行時有錯誤或臭蟲(Bug)是正常的,如果遇到程式掛掉,請提供黑色視窗裡的除錯用訊息給Max,這樣才有辦法得程式掛掉的原因,才能有效率地除錯。
  • 每次按「搶票」按鈕後,所開出新的 chrome 瀏覽器是全新的未登入狀態,所以在每個開出的視窗都需要在搶票前先登入你的售票系統的會員帳號。
  • 實際搶票前10分鐘(如果時間允許),請使用其他已經開賣中的活動測試功能是否正常:建議,先去購買其他已開放活動購票,並取消該購票,再回到倒數中搶票的活動頁面,這樣做可以先快取後面購買網頁所使用的外部資源,有助於搶票。這一點,沒去做也沒差。
  • 實際搶票前10分鐘(如果時間允許),建議「重開機」一次(這一點,沒去做也沒差),重開機完成後,建議關閉沒在使用的應用程式,只運行搶票程式,這樣子可以讓電腦發揮較好的效能。
  • 目前搶票程式在設計上的架構不是很好,長時間執行,程式可能會異常中止。

檔案說明:

  • chrome_tixcraft.py : 搶票機器人主程式, 用來自動化網頁的操作。
  • config_launcher.py : 設定檔管理, 方便對多個設定檔案搶票。
  • kktix_status.py : kktix 售票狀態監控,可以在有票時提發出提醒。
  • settings.py : 編輯 settings.json 的 GUI 介面。提供圖片OCR功能給chrome擴充功能。支援定時啟用/停用MaxBot。

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

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

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


主要功能:

  • 1:「場次 Session」、「區域 Area」、「劃位Seat」自動化。
  • 2:「場次」可以使用關鍵字去自動點選。
  • 3:「區域」可以使用關鍵字或票價去自動點選。
  • 4:「劃位」可以自動輸入想要的張數,張數可以參數調整。

搶票建議:

  • 請先「手動」用滑鼠點選自己要買票的活動。
  • 請先登入購票系統的會員,以加速購票流程。展示影片目的是在示範不使用滑鼠的情況下透過機器人選取想購買的日期、票價和張數。
  • 門票的「限量」是很殘酷的,建議不要用破舊的電腦或連線不穩的手機網路來搶票,因為只要比別人慢個 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 .


FamiTicket網站的搶票機器人,執行畫面:


改版記錄:

2019-10-26更新:

增加新欄位「關鍵字2號」:當畫面上所有符合「關鍵字1號」的票都已售完時,會自動點擊符合「關鍵字2號」的區域。


2019-04-04 改版內容:

針對未開賣的場次,自動刷新網頁到可以開賣,然後自動搶票。請參考影片:
https://www.youtube.com/watch?v=LE6uRsX2zcA


2019-01-25 改版內容:針對未開賣的場次,不會自動按「我要購票」按鈕。FamiTicket 搶票需要自己手動更新網頁,大約等2秒畫面沒有自動移到下一頁手動按鍵盤的「重新整理」鍵。請參考影片:
https://www.youtube.com/watch?v=yoAw6ZGnM_Y


前一個版本的影片:FamiTicket 搶票機器人 (2019-01-17)
https://www.youtube.com/watch?v=qjceDHqvme8

聽說網友分享關於全家購票系統,可能在搶票開賣時因為同時太多人搶,網路塞車被擠出伺服器,網友建議的解法:在登入帳號後,畫面鎖定在「我要購票」,等時間到就點擊「 我要購票」。


參數設定檔說明:

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

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

參數說明:

  • homepage”: 設定機器人一開始開出那一個網址。
  • browser”: 設定機器人用那一個瀏覽器,目前支援 “firefox” 和 “chrome”
  • ticket_number”: 設定票數
  • date_auto_select”: 設定要不要自動點選「日期」。要停用這個功能請取消勾選。
  • Date select order“: 自動點選的排序方式,”from_top_to_down” 是由上往下找,”from_down_to_top” 是由下往上找。
  • date_keyword”: 日期的關鍵字。如果使用空字串,代表搶第一個「可被點選」的日期。
  • area_auto_select”: 設定要不要自動點選「區域」。要停用這個功能請修改為 false。
  • Area select order“: 自動點選的排序方式,”from_top_to_down” 是由上往下找,”from_down_to_top” 是由下往上找。
  • area_keyword”: 區域的關鍵字。如果使用空字串,代表搶第一個「可被點選」的區域。

搶票機器人原理:

我是使用 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:這個搶票程式有違法FamiTicket相關法律嗎?
A:由於Max本身不具法律背景,無法回覆這個問題。Max猜測如果你在FamiTicket網站所留下的資料是真的,可能沒問題,因為本系統僅代為填寫購票資訊,無任何入侵、取得、刪除或變更售票系統其電磁紀錄。

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:先看官方給的PDF或網頁, 裡面會有該「場次」的關鍵字,如果是一天一場,請輸入日期的關鍵字即可。如果是一天多場,請輸入想搶的場次才有出現的關鍵字。如果不知道怎麼設,日期這個請設為不要透過機器人來幫忙自動選取,手動選場次不會相差太多時間,但建議還是透過程式自動選場次,因為比別人點的快,搶到票的機率就會比別人高。

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:除了目前程式所提供的功能,其他都需要自己手動操作。

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

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


相關文章:

台灣:

香港:

韓國:

其他:

Facebook網友回應

您可能也會感興趣的文章...

LINE 免費貼圖 2020-11-24

生活小事

這周只有日本地區的貼圖可以下載,以為LINE手寫貼圖會缺字,出乎意料之外,幾乎複雜的中文字也有支援,好神奇的手寫效果,建議下載。再一個月就準備要迎接聖誕節🎄,預祝大家佳節 […]

Read More

跑出圍牆外的樹枝

生活小事

人生就像這樹,努力地向外發展,但是樹並不知道外面世界的規則,樹枝長的太靠近跑道會影響到要運動的人,所以會被剪斷。有時候我們遇到了不如意的事(像是自己的樹枝被剪斷),我們的 […]

Read More

S8聲卡開箱

生活小事

Max在網路上買了一張聲卡,原本是買v8s 第二代,有3個紅色推子的版本,但試用了之後,還是退掉,改買貴一點的 s8 聲卡。買到的一整組商品如下:(聲卡+電容有線麥克風+ […]

Read More

5 則留言

  1. MAX老師 您好:
    意外看到看您這篇文章,深感敬佩。
    想與您洽詢,
    如果欲使用您的程式和使用教學的學費金額?
    再請您撥冗回覆至E-MAIL信箱,
    謝謝您。

    1. hello JIE 你好, 我不是老師,只是小嘍嘍。我沒有提供「使用教學」,只有這個網頁和Youtube影片。請參考看看這篇文章的「常見問答」謝謝。

  2. 版主你好
    使用Chrome下載會顯示檔案不安全,然後遭封鎖無法下載
    請問開如何解決呢

發佈回覆給「JAMES」的留言 取消回覆

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