当前位置:网站首页>Cloud function to achieve automatic website check-in configuration details [Web function/Nodejs/cookie]
Cloud function to achieve automatic website check-in configuration details [Web function/Nodejs/cookie]
2022-08-04 09:02:00 【Aspirant dishes pig】
文章目录
一.前言
现在大多数的网站都有每日签到功能,坚持签到会给相应的奖励,然而我们每天都签到是非常的不容易,难免会出现忘记签到的情况,所以云函数就产生了.
像现在大厂给个人用户提供的免费额度已经足够我们使用了.
我们以某网站为例,配置过程如下.
二.配置脚本过程
2.1获取某网站的cookie
我们需要先获取某网站的cookie,推荐使用谷歌游览器.我们打开该网站,保证现在处于登录状态.我们随机的发起一个请求,抓包如下:
我们抓到了现在的cookie先复制下来备用.
2.2获取uuid、aid和_signature
我们访问该网站的签到页面,筛选:check
查看详细,点击payload,显示uuid、aid和_signature,如下备用.
复制好上面的uuid、aid和_signature和cookie之后,下面就是我们的脚本函数.
2.3 脚本函数
我们写一个如下的脚本函数:
执行文件为app.js.
配置文件在config.js.
我们进入config.js,修改一下参数配置;
module.exports = {
cookie: '',
PUSH_PLUS_TOKEN: '',
aid: '',
uuid: '',
_signature: ''
}
2.4 注册plus
wx登录plus会获取到token,复制token.
这里的token对应着我们上文的的PUSH_PLUS_TOKEN.
2.5 配置config.js
如上,我们把上面步骤获取到的uuid、aid和_signature和cookie,放到config.js配置函数里.
如下:

三.部署脚本过程
创建云函数
版本选择:Nodejs12.16
选择事件函数
如下配置:
进入函数管理,部署事件函数:
配置触发器:每天早上9点自动签到.
点击测试,运行函数,检测部署是否有效.
测试截图:

测试成功,之后全自动的会每天9点准时签到领取奖励.nice
四,脚本代码分享
主要脚本代码,api已去掉.
const got = require('got')
const {
cookie, aid, uuid, _signature, PUSH_PLUS_TOKEN } = require('./config')
const BASEURL = 'https:XXXX'
const PUSH_URL = 'http:XXXXX' // 推送api
const URL = `${
BASEURL}?aid=${
aid}&uuid=${
uuid}&_signature=${
_signature}`
const DRAW_URL = `https:xxxxx`
const HEADERS = {
cookie,
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67'
}
// 签到
async function signIn () {
const res = await got.post(URL, {
hooks: {
beforeRequest: [
options => {
Object.assign(options.headers, HEADERS)
}
]
}
})
console.log(res.body)
draw()
if (!PUSH_PLUS_TOKEN) return
handlePush(res.body)
}
async function draw () {
const res = await got.post(DRAW_URL, {
hooks: {
beforeRequest: [
options => {
Object.assign(options.headers, HEADERS)
}
]
}
})
console.log(res.body)
}
// push
async function handlePush (desp) {
const body = {
token: `${
PUSH_PLUS_TOKEN}`,
title: `签到结果`,
content: `${
desp}`
};
const res = await got.post(PUSH_URL, {
json: body
})
console.log(res.body)
}
signIn()
边栏推荐
- PD 源码分析- Checker: region 健康卫士
- Quick tips for getting out of a single
- IDEA引入类报错:“The file size (2.59 MB) exceeds the configured limit (2.56MB)
- 软件工程国考总结——判断题
- 【STM32】STM32F103系列名称与封装、内存
- After four years of outsourcing, the autumn recruits finally landed
- 从底层看 Redis 的五种数据类型
- Fiddler(一)安装
- oracle sql 多表查询
- TiCDC同步延迟问题处理
猜你喜欢

布局管理器

ISO14443A读卡流程(作为示例参考)

ShuffleNet v2 network structure reproduction (Pytorch version)

从零开始C语言精讲篇6:结构体

【正点原子STM32连载】第二章 STM32简介 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1

Yolov5 replaces the backbone network of "Megvii Lightweight Convolutional Neural Network ShuffleNetv2"

递归思想

yolo x 跑起来,详细的不行,且内含800错误解决办法

Implementation of redis distributed lock

线程的状态
随机推荐
张朝阳对话俞敏洪:谈宇宙、谈焦虑、谈创业、谈退休、谈人生
记录十条工作中便利的API小技巧
【NOI模拟赛】纸老虎博弈(博弈论SG函数,长链剖分)
recursive thinking
async - await
我和 TiDB 的故事 | TiDB 对我不离不弃,我亦如此
用OpenGL绘制winXP版扫雷的笑脸表情
Apache Druid 实时分析数据库入门介绍
阿里云的数据库系统怎么升级更新的www.zgysffm.com怎么加快访问速度?
推荐几种可以直接翻译PDF英文文献的方法
户外徒步旅行
Shared_preload_libraries导致很多语法不支持
【Attention】Dual Attention(DANet) & Fully Attention(FLA)
RL学习笔记(一)
低代码应用开发的五大好处
inject() can only be used inside setup() or functional components.
oracle sql 多表查询
MATLAB绘图总结
Detailed explanation of MSTP protocol configuration on Layer 3 switches [Huawei eNSP experiment]
路由/三层交换机DHCP下发地址详解【华为eNSP】