人工智慧也能搶演唱會門票?解密自動化搶票可行性
最近使用人工智慧技術搶演唱會門票的新聞正夯,這次讓我們從技術的角度重新檢視一下“自動化搶票”的可行性,這個議題主要可以分成三個部分:
1. 驗證碼破解:
有些人或許會質疑,這不就是寫程式搶票,哪裡需要人工智慧技術呢?但實際上,驗證碼的破解需要訓練神經網路,而神經網路是人工智慧的核心。因此我們可以說使用人工智慧來搶票的說法是正確的。新聞中提到使用卷積神經網路 (Convolutional Neural Network, CNN) 來解決圖形驗證碼的好處很多,以前破解驗證碼需要處理雜訊點和跨越驗證碼的線條(例如高鐵的驗證碼)。然而,使用CNN技術,只需提供圖片和相對應的答案標籤,經過幾輪的訓練,就能建立一個能夠迅速破解驗證碼的模型,比人類更快更準確。
對於想深入了解模型原理的人,我們有一門線上課程,有興趣的可以參考一下(折扣碼:TC1470QU):
https://www.tiandiren.tw/product/c1470
但CNN也有一個缺點,它只能識別固定長度的驗證碼。如果驗證碼的長度不固定,就需要將遞歸神經網路(Recurrent Neural Network, RNN)與CNN結合,建立CRNN 模型,CRNN神經網路能夠讓驗證碼識別模型變得更加通用。而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存取方式,人工智慧實作自動化搶票機制的確可行。
最後,我想強調一點,常有人私訊請我們代寫搶票程式,不過搶票行為通常被認為是不當的,甚至可能會引來法律糾紛,因此我們都會婉拒此類請求。
另外,一些網站會警告我們不要教學如何爬取他們的網站,但實際上,我對貴公司的網站毫無興趣,所有有客戶付費請我們爬的網站都不會出現在教學頻道上
之後有機會再重新錄製一系列的爬蟲教學,對該主題有興趣的學員們,就敬請期待摟!