此文档已经迁移到这里
此文档已经迁移到这里
此文档已经迁移到这里
打开金山文档官网
登录之后点击左上角的【新建】
选择【Office文档】-> 【表格】
选择【空白表格】
进入表格界面点击【效率】->【高级开发】->【AirScipt脚本编辑器】
打开【AirScipt脚本编辑器】之后点击【创建脚本】->【文档共享脚本】
复制以下代码
let fs;
let smtp_host = Application.Range("G2").Text;
let smtp_port = parseInt(Application.Range("G3").Text);
let smtp_username = Application.Range("G4").Text;
let smtp_password = Application.Range("G5").Text;
let smtp_secure = Application.Range("G6").Text.toLowerCase() === "true";
let smtp_to = Application.Range("G7").Text;
let blibli_uid = parseInt(Application.Range("G8").Text);
// 发起GET请求
let url = "https://api.bilibili.com/x/relation/stat?vmid=" + blibli_uid;
let resp = HTTP.get(url);
if (resp.status !== 200) {
throw new Error("Error! Status is " + resp.status());
}
let data = resp.json(); // 解析JSON响应
if (data.code === 0) {
let follower = data.data.follower; // 获取follower数据
let sheet = Application.ActiveSheet;
// 寻找第一个空的单元格并记录关注者数量
let row = 1;
while (sheet.Range('B' + row).Value !== "") {
row++;
}
// 创建一个Date对象
var currentDate = new Date();
// 获取当前中国时间
var options = { timeZone: 'Asia/Shanghai' };
var chinaTime = currentDate.toLocaleDateString('en-US', options);
sheet.Range('A' + row).Value = chinaTime;
sheet.Range('B' + row).Value = follower;
fs = follower;
console.log("粉丝数量:" + fs)
// 计算A列倒数第一和倒数第二个单元格的差
let lastRow = row;
if (lastRow >= 2) {
let lastFollower = sheet.Range('B' + (lastRow - 1)).Value;
let diff = fs - lastFollower;
zj = diff
if (diff == 0) {
console.log("粉丝不变")
} else {
console.log("粉丝增加" + diff);
smtp_message()
}
}
} else {
console.error("API response error: " + data.message);
}
function smtp_message() {
// 发送邮件通知
console.log("发送邮件通知")
let mailer = SMTP.login({
host: smtp_host,
port: smtp_port,
username: smtp_username,
password: smtp_password,
secure: smtp_secure,
});
mailer.send({
from: smtp_username,
to: smtp_to,
subject: "粉丝数通知",
html: `
<div style="background-color: #f0f0f0; padding: 20px;">
<div style="background-color: #ffffff; padding: 20px; border: 1px solid #ddd; border-radius: 5px;">
<h4 style="color: #333; font-size: 18px;">哔哩哔哩粉丝数量通知</h4>
<p style="color: #555; font-size: 16px; margin: 0;">当前粉丝数量: <strong>${fs}</strong></p>
<p style="color: #555; font-size: 16px; margin: 0;">粉丝增加: <strong>${zj}</strong></p>
<p style="text-align: center;">
<a href="https://space.bilibili.com/${blibli_uid}" style="color: #888; text-decoration: none; border: none; font-style: normal;">查看主页</a>
</p>
</div>
</div>
`,
});
console.log("发送完毕")
}
再按照模板填入信息
如果你有定时获取的需求可以在【效率】->【高级开发】->【定时任务】里设置