掘金自动签到以及抽奖

前言

前几天在逛掘金的时候发现有签到功能,写完文章顺便连着签到了几天,过几天没写文章就断了,看着这个强迫症都犯了,于是直接动手写了一个自动签到脚本,并用飞书 Bot 进行结果推送😎😎😎,文末有仓库地址

正文

需要准备的东西

  • 一台服务器(可以白嫖 Github Action)
  • 了解一些前端基础
  • 了解一门后端语言(作者使用的是 Node.js)
  • 一个飞书账号

冻手

签到&抽奖

准备工作

  • 签过的人都知道,每天签到后有一次免费抽奖的机会,但是保险起见,我们还是需要获取一下免费的次数
  • 先查看一下签到、获取抽奖信息、抽奖时的网络请求,拿到 url 地址
bash 复制代码
https://api.juejin.cn/growth_api/v1/check_in?aid=xx&uuid=xx&spider=xxx&a_bogus=xx //签到
https://api.juejin.cn/growth_api/v1/lottery_config/get?aid=xx&uuid=xx&spider=xx //抽奖信息
https://api.juejin.cn/growth_api/v1/lottery/draw?aid=xx&uuid=xx&spider=xx&msToken=xx&a_bogus=xx //抽奖
  • 再随便找一个携带 cookie 的请求中复制一下自己的 cookie

开写

  • 我们可以先创建一个仓库,然后 clone 到本地,这样就不用再关联仓库等一堆麻烦的操作

  • 首先 npm init -y 默认创建一个 package.json 文件,因为作者常用 axios 请求,因此直接安装

  • 然后可以创建 config 目录,里面存放项目配置,例如 urls,cookie等,因为 cookie 等均为敏感信息,我们将其存放在 Github Action 的 secret 中

  • 接下来就可以在根目录下创建 index.js 来编写相关请求了,思路就是

    1. 先调用签到接口,签到成功后
    2. 再调用查询抽奖信息接口,判断一下是否有免费次数
    3. 有即可调用抽奖接口

    具体不再赘述

飞书 Bot

  • 查看飞书官方的自定义机器人使用指南),推荐加上签名校验提高安全
  • 省流:创建机器人,勾选签名校验,拿到 webhook 以及 secret 值即可

Github Action

  • 编写对应的 workflow 文件,可以在 Actions 里面搜索 Node.js 相关的 workflow 模板,作者使用的是这个

结语

相关推荐
YIAN6 小时前
RAG 学到最后,我真正学会的不是“检索”,而是让系统知道自己缺什么
langchain·node.js·llm
用户11977079480736 小时前
GitHub 电商开源项目分享:用 sharp 批量出饰品主图,试了裁剪、细节图和色彩配置文件三个坑
前端·node.js
donecoding7 小时前
pnpm 配好了,为什么执行的还是另一份?命令入口与运行时排查
node.js·前端工程化
江屿风7 小时前
【Plain Language Large Model】【从浏览器到全栈:一课精通Node.js三剑客】流食般投喂
笔记·前端框架·npm·node.js·js·npx
SomeOtherTime10 小时前
node.js基础(AI回答)
node.js
雨季mo浅忆1 天前
记录Node.js安全漏洞及其内置Brotli解码器问题
node.js·安全性测试
tommyjiatong1 天前
资安底座连环雷:从 PHP2Shell 到 Node2Shell
node.js·php
SEO_juper1 天前
Bash 交叉验证 robots.txt 和 sitemap:两个文件自相矛盾,页面永远收录不了
开发语言·python·node.js·json·bash
SEO_juper1 天前
Go 站点地图生成器:从首页爬全站,一键生成 sitemap.xml
xml·开发语言·人工智能·golang·node.js·seo·外贸独立站
Moshow郑锴2 天前
Ansible 批量部署 Node.js 服务:ZIP 直解与共享目录分发两种方案对比
node.js·ansible