人工智慧也能搶演唱會門票?解密自動化搶票可行性
人工智慧自動化搶票是指利用人工智慧技術繞過售票網站安全機制、自動完成搶票流程的行為,在技術上可行,但涉及法律與道德爭議。其核心技術可分三個環節:第一,驗證碼破解需訓練卷積神經網路識別圖形驗證碼,若驗證碼長度不固定,則需結合遞歸神經網路建立混合模型,識別準確率高於人工。第二,藝人知識問答問題可透過大型語言模型配合檢索增強生成技術回答,或以電腦快速窮舉所有可能選項。第三,網路連線速度是搶票成敗最關鍵的因素,實務建議測試售票網站的連線延遲,選擇最低延遲的跳板伺服器,並直接呼叫應用程式介面而非使用瀏覽器自動化工具。綜合來看,只要事先建立好驗證碼解析模型,並對售票流程進行完整測試,自動化搶票在技術層面確實可行,但此類行為在多數地區屬於不當甚至違法的行為,可能面臨法律糾紛與民事責任。

最近使用人工智慧技術搶演唱會門票的新聞正夯,這次讓我們從技術的角度重新檢視一下“自動化搶票”的可行性,這個議題主要可以分成三個部分:
1. 驗證碼破解:
有些人或許會質疑,這不就是寫程式搶票,哪裡需要人工智慧技術呢?但實際上,驗證碼的破解需要訓練神經網路,而神經網路是人工智慧的核心。因此我們可以說使用人工智慧來搶票的說法是正確的。新聞中提到使用卷積神經網路 (Convolutional Neural Network, CNN) 來解決圖形驗證碼的好處很多,以前破解驗證碼需要處理雜訊點和跨越驗證碼的線條(例如高鐵的驗證碼)。然而,使用CNN技術,只需提供圖片和相對應的答案標籤,經過幾輪的訓練,就能建立一個能夠迅速破解驗證碼的模型,比人類更快更準確。
對於想深入了解模型原理的人,我們有一門線上課程,有興趣的可以參考一下(折扣碼:TC1470QU):
https://www.tiandiren.tw/product/c1470
但CNN也有一個缺點,它只能識別固定長度的驗證碼。如果驗證碼的長度不固定,就需要將遞歸神經網路(Recurrent Neural Network, RNN)與CNN結合,建立CRNN 模型,CRNN神經網路能夠讓驗證碼識別模型變得更加通用(PyTorch RNN 教學)。而CRNN技術也常被用於光學字符辨識(OCR)等領域中。
對於想參考相關程式碼的人,可以直接查看以下的Pytorch程式碼範例:
https://github.com/ywchiu/cathaydl/blob/main/CNN/OCR_Pytorch.ipynb
2. 藝人問題填答:
這是一個相當困難的問題。雖然現在有ChatGPT等大型語言模型,可以透過Retrieval Augmented Generation (RAG) 回答簡單的單選題或複選題,但當遇到像售票網站標錯蔡依玲巡迴演出場次數量等烏龍時,似乎任何人工智慧都無解。這邊可以改以兩種可能性來重新思考這問題。一種是內神通外鬼,售票機構內部的人可能早就洩漏了答案給黃牛,然後通過拆帳的方式賺錢。另一種可能是,電腦可以快速嘗試所有可能的組合,所以有辦法在短時間內測試所有可能選項,這樣即使對該藝人一無所知,一樣可以搶得到票。
3. 網速:
我認為網速是自動化搶票最關鍵的因素。如果網速太慢,導致其他機器人搶走了門票,那麼一切努力都會落空。因此,在開始搶票之前,應該先測試售票網站的連線ping值,並找到延遲最低的跳板。此外,一般的搶票程式通常會直接使用GET和POST方法來訪問API,而不是會使用像Selenium等網頁自動化工具。所以儘管學習爬蟲時,Selenium相對容易上手,但實務上還是建議學習如何觀察API 的存取方式才是上選。早知道該怎麼觀察的,可以參考我們的基礎爬蟲教學。
結論
總之,只要事先建立好驗證碼解析模型,並先對其他不太熱門的演唱會場次進行多次測試,包括個人資料輸入、座位確認和付款等API存取方式,人工智慧實作自動化搶票機制的確可行。
最後,我想強調一點,常有人私訊請我們代寫搶票程式,不過搶票行為通常被認為是不當的,甚至可能會引來法律糾紛,因此我們都會婉拒此類請求。
另外,一些網站會警告我們不要教學如何爬取他們的網站,但實際上,我對貴公司的網站毫無興趣,所有有客戶付費請我們爬的網站都不會出現在教學頻道上
之後有機會再重新錄製一系列的爬蟲教學,對該主題有興趣的學員們,就敬請期待摟!