作者 | 弗拉德
來源 | 弗拉德(公眾號:fulade_me)
文章首發地址
雙十一剛剛過,相信很多小伙伴也都剁手了。今年電商平台同樣給出了很多優惠。有些優惠,比如紅包,是靠運氣來獲得的,但是還有一些優惠是靠長期堅持才能獲得。比如:簽到、東東萌寵。每天都能堅持簽到固然很棒,但是如果有腳本可以自動簽到,那豈不是更美?
自動簽到腳本此腳本涵蓋了目前京90%以上的簽到任務,我們只需要簡單配置,每天定時觸發,就可以簽到,領獎品了。而且都是免費的。
運行環境
- node.js
- Server醬(可選)
獲取京東Cookie
這里以Chrome
瀏覽器為例,Edge
、360瀏覽器
、QQ瀏覽器
同樣支持。
- 打開Chrome瀏覽的隱私模式,輸入https://m.jd.com/。
- 按下鍵盤上的
F12
進入調試模式,選擇手機模式。
如果沒有登錄就使用手機驗證碼
方式登錄(已登錄,可忽略),使用驗證碼登錄獲取的cookie
有效時長30天左右,存活時間更長。 - 登錄成功后,點擊
Network
然后點擊箭頭所指的這個按鈕清理一下,因為網絡請求太多了,不方便查看。
清理完了之后,點擊一下我的
。
這個時候我們找到一個log.gif?
開頭的請求,點擊它,就可以看到cookie
字段了。
- 這樣復制出來的cookie比較長,我們只需要
pt_pin=xxxx;
和pt_key=xxxx;
部分的內容即可(注:英文引號;
是必要的)。
可以用下面的腳本,直接在console
里面輸入下面腳本按enter
回車鍵。
var CV = '單引號里面放上面拿到的cookie';
var CookieValue = CV.match(/pt_pin=.+?;/) + CV.match(/pt_key=.+?;/);
copy(CookieValue);
這樣子整理出關鍵的的cookie已經在你的剪貼板上,可直接粘貼。
我們先把它保存好,下面的步驟要用到。
配置 Server醬
Server醬是一個免費的,可以推送消息到我們微信的服務。
推送服務可以幫助我們每天觀察簽到的情況,如果出錯了,可以及時調整。如果有的小伙伴不需要,可忽略這個步驟,直接進入下一步。
- 打開主頁 http://sc.ftqq.com/3.version,點擊右上角
登入
- 使用Github 授權,登錄。
輸入賬號密碼即可。 - 登錄成功后點擊
微信推送
並掃描二維碼綁定微信
使用手機打開微信,掃描屏幕上的二維碼,如果未關注,先關注,然后再綁定即可。
- 綁定成功后,點擊右上方的
發送消息
鏈接,就可以看到你自己的key
值,保存下來,后面會用到。
當然你也可以在下面的在線發送工具
測試推送是否生效。
配置本地代碼
-
使用
git clone
命令將https://github.com/Johnson8888/jd_sign_bot代碼下載下來。 -
下載完成后,我們需要安裝項目所需要的依賴。使用命令行工具(Mac下使用
Termainal
,Windows下使用PowerShell
)進入到jd_sign_bot
文件內。在命令行內輸入npm install --dependencies
,等待運行完成。
此時,項目文件夾內會多出一個node_modules
文件夾。 -
配置Cookies
打開文件內的JD_DailyBonus.js
文件,修改Key
參數為剛剛獲取到的cookies
-
配置Server醬
打開文件內的app.js
文件,修改serverJ
參數為剛剛獲取到的Server醬的key
執行簽到
進入到jd_sign_hot
文件夾下,執行 node app.js
即可簽到!
此時我們的腳本在本地就已經部署好了,如果你想更編輯,可以把代碼部署到雲服務器上,這樣就不需要每天點擊觸發了。
或者你也可以部署在自己的服務器上,每天定時執行。
你也可以 將腳本部署在騰訊雲 · 雲函數 上
去到騰訊雲函數地址,如果沒有開通此服務的順手開一下就可以了。
-
單擊左側導航欄函數服務,進入函數服務頁面。 在頁面上方選擇一個地域,最好選擇離你常用地區近點的,不至於導致賬號異常。單擊新建。如下圖所示:
-
在新建函數頁面填寫函數基礎信息,單擊下一步。如下圖所示:
-
函數名稱:可以自定義,比如為
jd_sign
。 運行環境:選擇Nodejs 12.16
。 創建方式:選擇空白函數
。
確保環境為Nodejs 12.16
,執行方法改為:index.main_handler
,提交方式建議選本地文件夾。 -
然后將剛才下載並配置好的文件夾
jd_sign_bot
上傳上來。(記得node_modules文件夾一並上傳),完了后點擊下面的高級設置。
-
內存用不了太大,64MB就夠了(64M內存,免費時長6,400,000秒,內存與免費時長大致關系可以參看雲函數官方說明),超時時間改為最大的900秒,然后點擊最下面的完成。
- 點擊剛創建的函數
點擊創建觸發器
比如我填寫的是 0 45 8 * * * *
,每天上午8點45觸發一次。
騰訊雲提供了相關配置Cron的文檔,也有第三方測試工具。
測試一下
我們打開剛才創建的雲函數,點擊保存並測試
,等過1分鍾左右手機上收到推送,那我們的配置就是成功的。
如果沒有收到推送,可以點擊日志查看
排查問題。
如果你不喜歡騰訊雲的服務
我們可以參考ruicky大神的博客,將腳本部署在Github Actions上面也是也可以的。