banner
oldcatY

oldcatY

中轻度LoveLive厨,主推莲团,二推水+虹团(缪团是神,星团……)
twitter
github
bilibili
steam

【技巧】如何優雅地自動領取Epic遊戲

注意:由於 Epic 不斷提升反機器人功能,此倉庫已經基本失效。目前 Headless 類方式沒有可用手段,必須使用 Headful 類方式

如何優雅的白嫖#

由於 Epic 很多時候送遊戲我因為各種原因 (其實就是忘了) 而沒有領到,所以翻遍了 Github,發現有很多自動領取腳本,但絕大多數的腳本都有一個問題:無法通過 hCaptcha 人機驗證。網上關於 hcaptcha 也有很多破解方案,比如申請開發者 API TOKEN 繞過等,但終究不是個開箱即用的方法。

直到我發現了這個倉庫

EPIC 免費人 | 優雅地領取 Epic 免費遊戲

→ 這是官方技術文檔 ←


用前提示#

來自作者的警告:

  • 本項目不允許上游 fork 分支在 GitHub Actions 中運行 claim | get | deploy 腳手架指令。
  • 作者在代碼中添加了指紋鎖用於阻斷來自公有倉庫 GitHub Actions 的啟動信號,但玩家可以按照下文步驟創建私有工作流,運行基於 claim 腳手架指令的定時任務。
  • 需要注意,schedule 配置參數,倉庫可見性,倉庫名,執行語法等必須依據規定謹慎設定,否則會出現濫用風險。

搭建#

1. 創建 Github 私有庫#

進入 https://github.com/new 頁面,創建 Private 權限的庫。
請注意:倉庫名不能出現 claimepic 關鍵詞,大小寫都不行。

2. 創建 Action 工作流#

進入剛創建好的庫,點擊 Actions ,選擇 simple workflow(點擊它下面的 Configure),然後複製粘貼以下內容:

name: source-git # 修改你的名稱

on:
  workflow_dispatch:
  schedule:
    - cron: "10 23 * * 4,5" # 修改你的定時配置

jobs:
  setup:
    env:
      COMMAND_CLAIM: "xvfb-run python main.py claim"
      COMMAND_GET: "xvfb-run python main.py get"
      COMMAND_UNREAL: "xvfb-run python main.py unreal"
      FAKE_HASH: "Automated deployment @ $(date '+%Y-%m-%d %H:%M:%S') Asia/Shanghai"
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: 初始化環境 & 拉取項目
      run: |
        sudo timedatectl set-timezone "Asia/Shanghai"
        git clone https://github.com/QIN2DIM/epic-awesome-gamer.git epic
        cp epic/requirements.txt .
    - name: 初始化配置文件
      run: |
        cd epic/src
        echo "PUSHER_TELEGRAM: ${{ secrets.PUSHER_TELEGRAM }}" >> config.yaml
        echo "EPIC_EMAIL: ${{ secrets.EPIC_EMAIL }}" >> config.yaml
        echo "EPIC_PASSWORD: ${{ secrets.EPIC_PASSWORD }}" >> config.yaml
        echo "PLAYER: ${{ secrets.PLAYER }}" >>config.yaml
    - uses: actions/setup-python@v4
      with:
        python-version: "3.10"
        cache: 'pip' # caching pip dependencies
    - name: 安裝依賴
      run: |
        pip install -r epic/requirements.txt
        cd epic/src/ && python main.py install
    - name: 啟動項目
      run: |
        if [ -d "database" ];then cp -rfp database epic/src/; fi
        cd epic/src/
        ${{ env.COMMAND_CLAIM }}
        # ${{ env.COMMAND_GET }} # Optional
        # ${{ env.COMMAND_UNREAL }} # Optional
    - name: Setup GIT user
      uses: fregante/setup-git-user@v1
    - name: 緩存身份令牌
      run: |
        if [ -d "epic/src/database" ];then cp -rfp epic/src/database .; fi
        if [ -f "epic/src/datas/logs/runtime.log" ];then cp epic/src/datas/logs/runtime.log datas.log; fi
        cp epic/src/database/logs/runtime.log .
        echo "${{ env.FAKE_HASH }}" > _token
        rm -rf epic
        git add .
        git commit -m "${{ env.FAKE_HASH }}" 
        git push -f          

上述代碼中,EPIC_EMAIL 代表你 epic 登錄的郵箱,EPIC_PASSWORD 代表你 epic 登錄的密碼,PUSHER_TELEGRAM是可選項,具體方案參照本網頁

3. DEBUG 工作流#

進入 Actions 後,點擊 Run Workflow 運行一次,如果沒有問題則大功告成

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。