使用Cloudflare Workers每天自动领取大会员经验
前言
主要大会员经验领取麻烦,要点好多下才能领,容易忘。所以才没有添加别的每日积分任务 (绝对不是因为懒
创建一个Workers
当然要先注册账号,在这里 https://dash.cloudflare.com/
进入控制面板,创建一个新的Workers
先部署,然后点击编辑代码
把原有代码删除,填入以下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| addEventListener('scheduled', event => { event.waitUntil(handleScheduled(event)); });
async function handleScheduled(event) { const SESSDATA = ''; const bili_jct = ''; const telegramBotToken = ''; const chatId = ''; const url = "https://api.bilibili.com/x/vip/experience/add"; const payload = `csrf=${bili_jct}`; const headers = { 'User-Agent': 'Mozilla/5.0 BiliDroid/7.45.0 (bbcallen@gmail.com) os/android model/2211133C mobi_app/android build/7450300 channel/yingyonghui innerVer/7450300 osVer/13 network/2', 'Content-Type': 'application/x-www-form-urlencoded', 'Cookie': `SESSDATA=${SESSDATA}` };
const response = await fetch(url, { method: 'POST', headers: headers, body: payload });
const responseJson = await response.json(); console.log(responseJson);
const telegramUrl = `https://api.telegram.org/bot${telegramBotToken}/sendMessage`; const telegramPayload = { chat_id: chatId, text: `自动任务已执行!\n\ncode: ${responseJson.code}\nmessage: ${responseJson.message}` }; await fetch(telegramUrl, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(telegramPayload) }); }
|
获取SESSDATA和csrf
打开 https://www.bilibili.com/ 并登录,F12打开开发者设置,切换到Application(应用程序)
选项卡
如图,获取SESSDATA和bili_jct的值,填入代码开头处
设置Telegram Bot推送
在 @BotFather 处创建机器人,并把token填入代码开头telegramBotToken
处。
与 @userinfobot 对话/start
,获取对话id,填入代码开头chatId
处。
部署
代码编辑完成后,点击右上角保存并部署
返回workers主页,在触发器
面板下拉,设置Cron 触发器
,按下图设置每天运行
自行设置UTC时间,可以设为接下来几分钟以便测试。(注意北京时间要-8小时)
添加触发器。完成!