[零基礎上手] Discord 自動參加抽獎機器人(雲端穩定版)

Discord bot 抽獎機器人

本篇教學會帶大家部署一個自動參加 Discord 抽獎機器人,會使用雲端主機 Google Cloud Function,好處是不會面臨電腦關機時機器人就休息的情況,然後 Google 也有提供一定使用額度內免費,所以基本上是完全零成本免費部署,讓大家都可以解放雙手和注意力,不會再錯過任何 Discord 的抽獎項目!

會有這篇文章的誕生,主要感謝 Fomo dog 社群中的 meta Simon 和 saibalmars 狗友們,不斷地改進和修正程式碼 (如下連結),才會有今天的 Discord 抽獎機器人(雲端穩定版本)

1. 申請 Google Cloud Platform

首先我們要申請 Google Cloud Platform 的帳號,可以從這裡進入,Google 目前有提供 3 個月內 300 美金的額度使用,而我們這次會使用 GCP 裡面的 Google Cloud Function,以這次部署的程式的每用使用量來說,每月的花費在 0 塊台幣以內。

接下來建立第一個專案,專案名稱可以依自己喜好命名

2. 創建 Cloud Function

接下來在搜尋欄中搜尋 “Cloud Function”,並且選擇建立函式

創建 Cloud Function – Step 1

  1. 函式名稱:可以自由填寫
  2. 選擇區域:可以挑選自己喜歡的主機所在地,這邊選擇 asia-east1 台灣
  3. 觸發條件:選擇 Cloud Pub / Sub
  4. 建立一個 Pub / Sun 主題 > 輸入主題 ID (可隨意填) > 選擇建立主題
  5. 選擇儲存
  6. 並點選下一步

創建 Cloud Function – Step 2

  1. 選擇啟用 API
  2. 選擇執行階段 Python 3.9
create GCF step3

創建 Cloud Function – Step 3

  1. 選擇 main.py
  2. 輸入進入點:getlist
  3. 輸入我們的抽獎機器人程式碼

步驟 3 裡面的完整程式碼如下: (請在 bots_setting 中加入自己想要追蹤的抽獎頻道,關於參數設定可以參考 Simon 的這篇)

在步驟 4 裡面的 requirements.txt 裡面加入 requests,完整程式碼如下:

最後點擊部署!但程式目前還不會自動執行,我們還要加上觸發時間

3. 設定觸發時間

  1. 在搜尋欄中,搜尋 cloud scheduler,並建立一個新工作
  2. 名稱:Hourly (這邊可以隨意填)
  3. 地區:選擇台灣
  4. 頻率:30 * * * * (這個意思是每個小時會執行一次)
  5. 時區:世界標準時間
  6. Pub / Sub 主題:選擇我們稍早在創立 Cloud function 時所創造的 hourly 的 Pub / Sub
  7. 訊息內文:這邊可以隨便填

最後選擇建立!就完成觸發條件設定囉

4. 如何檢查 Discord 抽獎機器人

如何確定程式有執行?基本上只要沒事去看一下 Discord 抽獎頻道,確認有沒有點擊抽獎就可以了

擔心的話可以到 Cloud Function > 紀錄裡面,可以看到程式執行過程 (如下圖)

那 [零基礎上手] Discord 自動參加抽獎機器人(雲端穩定版) 就到這邊感謝收看,如文章內容有誤請不吝指正!

▍相關延伸閱讀:

▍其他延伸閱讀:

在〈[零基礎上手] Discord 自動參加抽獎機器人(雲端穩定版)〉中有 7 則留言

  1. 請問有 twitter raffle 版本的嗎?
    前陣子有在研究,但 twitter API 被擋。看來只能用自動化測試工具來做了…

      1. 目前這個方案是每小時掃一次,不要去調整成每分鐘掃或搭配其他抽獎機器人使用的話,正常使用下是不會有問題的!

      1. 感謝回應 !
        另外想了解,是否有研究過 “button” 類型,而不是 “emoji” 的抽獎?
        我看 trait sniper 很愛用這種,有個綠色的 “enter” 可以按。
        不知道這樣的動作是否也能透過 API 實現?

發佈留言

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