阿里云:
服务器购买地址
https://t.aliyun.com/U/8qaNGK若失效,可用地址
https://www.aliyun.com/activity/wuying/dj?source=5176.29345612&userCode=49hts92d腾讯云:
https://curl.qcloud.com/wJpWmSfU若失效,可用地址
https://cloud.tencent.com/act/cps/redirect?redirect=2446&cps_key=ad201ee2ef3b771157f72ee5464b1fea&from=console华为云
https://activity.huaweicloud.com/cps.html?fromacct=64b5cf7cc11b4840bb4ed2ea0b2f4468&utm_source=V1g3MDY4NTY=&utm_medium=cps&utm_campaign=2019052.部署教程
3.代码如下
let header = {headers: {"content-type": "application/x-www-form-urlencoded; charset=UTF-8",cookie: config.maoer.cookie,referer: "https://fm.missevan.com/live/160481424","user-agent":"Mozilla/5.0 (Linux; Android 10; Redmi K30) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.111 Mobile Safari/537.36",},};tw = 0;k = 0;point = 0;let soundid = [2006321, 1891240, 1891238, 1850399, 1850337];const axios = require("axios");function check() {return new Promise(async (resolve) => {try {ress = await axios.get("https://www.missevan.com/account/userinfo",header);if (ress.data.success) {let data = ress.data.info;point = data.point;console.log(`${data.username} 当前小鱼干:${data.point}`);await task(`https://www.missevan.com/member/gettask?ttype=1&userid=`);await task("https://www.missevan.com/member/getcatears?gtype=1");await task("https://www.missevan.com/member/getcatears?gtype=4");await task(`https://www.missevan.com/member/getfeedtask?ttype=1&userid=&_=`);await task("https://www.missevan.com/member/getcatears?gtype=2");} else {console.log("cookie失效");point=0}} catch (err) {console.log(err);point =0}resolve(point);});}function task(url) {return new Promise(async (resolve) => {try {let res = await axios.get(url, header);message = res.data.success;// console.log(res.data)if (res.data.success && res.data.info && res.data.info.message) {message = res.data.info.message;// console.log( || res.data.info.message)} else if (res.data.error || !res.data.success) {message = res.data.error ? res.data.error : res.data.info;}console.log(message);if (JSON.stringify(res.data).match(/必须发布/)) {await addcomment();await task(url);} else if (JSON.stringify(res.data).match(/必须投食/)) {await ts();await task(url);}} catch (err) {console.log(err);console.log("接口请求出错");}resolve();});}function addcomment() {return new Promise(async (resolve) => {try {for (i = 0; i < 3; ) {let msg = await axios.get("https://v1.hitokoto.cn/");let data = `type=1&eId=2154758&comment=${encodeURI(msg.data.hitokoto)}`;let ress = await axios.post("https://www.missevan.com/site/addcomment",data,header);if (ress.data.success) {console.log(`评论第${++i}次成功:${msg.data}`);} else {console.log(`评论失败`);console.log(ress.data);break;}}} catch (err) {// console.log(err)console.log("接口请求出错");}resolve();});}function ts() {return new Promise(async (resolve) => {try {while (tw < 4) {let data1 = `sound_id=${soundid[k++]}`;let res = await axios.post("https://www.missevan.com/sound/ts",data1,header);if (res.data.success) {console.log(`投喂第${++tw}次成功`);} else if (res.data.error == "五分钟只能投一次小鱼干囧") {console.log(res.data.error);} else {console.log(`投喂失败`);console.log(res.data);break;}}} catch (err) {console.log(err);console.log("接口请求出错");}resolve();});}async function missevan() {let point1 = await check();let point2 = await check();console.log(`今日共获得${point2 - point1}小鱼干`);return `【猫耳FM】:当前共${point2}小鱼干 `;}module.exports = missevan;//missevan()
这脚本主要用于自动执行与猫耳FM网站相关的一系列任务,包括获取用户信息、执行任务、添加评论和投喂。这些任务主要通过调用API接口来完成。
check 函数:
该函数首先尝试获取用户信息,通过API请求 https://www.missevan.com/account/userinfo
如果成功获取用户信息,脚本将打印出用户的用户名和积分(小鱼干)。 然后依次调用其他任务的API(如获取任务信息、获取猫耳信息等)。 如果cookie失效,会打印出"cookie失效"的信息,并将积分设置为0。 返回最终的积分。 task 函数:
接收一个URL作为参数,用于调用不同的API接口。 该函数基于接口的返回值处理任务的逻辑,包括错误处理和根据返回消息判断是否需要继续进行特定操作(如添加评论、重新执行任务等)。 如果返回的数据中含有特定关键词,如"必须发布"或"必须投食",则会调用相应的函数(addcomment或ts)以满足条件。 addcomment 函数:
自动添加评论到指定的条目。 通过调用 https://v1.hitokoto.cn/获取随机的一句话,然后将其作为评论内容提交。评论成功或失败都会在控制台打印相应的信息。 ts 函数:
自动"投喂"操作,即向特定的音频项目投放小鱼干(一种虚拟货币)。 该函数会尝试对列表中的音频ID进行投喂,根据返回的信息判断是否成功,并处理相关错误(如投喂频率限制)。 missevan 函数:
主函数,用于执行上述的 check函数两次,计算在这一过程中用户获得的小鱼干数量。打印出最终用户拥有的小鱼干数量。
注意:
本文部分变量已做脱敏处理,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。技术层面需要提供帮助,可以通过打赏的方式进行探讨。
没有评论:
发表评论