线报酷

用青龙面板推送线报酷内容

线报酷6举报

本站有开放API请求接口,线报酷开放调用接口说明V2 - 线报酷 (xianbao.fun),通过调用接口就可以获取本站最新数据。青龙面板是定时任务面板,作用是定时运行脚本任务,就可以定时去请求数据返回最新的文章,可以推送到QQ,微信,钉钉,Bark等。



为什么有用户中心的推送还需要用青龙面板推送?

青龙面板的可以在Linux系统上,同时我还看的有人把青龙面板刷在路由器,无限WIFI上,或者你有服务器但是不想要多买一台windows服务器的就可以使用青龙面板推送。

需要自己懂任意一个语言(python3、javaScript、shell、typescript),不然会有难度。

用户中心的万能推送是需要依赖Windows浏览器+油猴插件来实现,所以就会比较局限一点点。



本教程只是讲一个大概,具体代码需要自己去实现:筛选过滤,推送功能需要自己去领悟下代码。

1.安装青龙面板,不会安装的需要自己去百度下或者去看下视频。

2.找一个Chatgpt 3.5版本的就可以,不需要4.0版本,然后给GPT发送下面这段话,生成脚本。(我自己懒得写重复造轮子,并且推送起来没有用户中心的万能推送效果好,而且这个推送不需要依赖付费会员)。

我推荐一个我自己使用的Chatgpt FastGo 0.03元/千字,上下文对话也会重新占用Tokens,所以连续对话尽量不要太长,上下无关的问题可以清空对话重新问。我下面使用的是javaScript搞得,也可以问GPT使用py编写。

用青龙面板帮我写一个nodejs脚本:请求网址http://new.xianbao.fun/plus/json/push.json,获取到请求的内容后解析json,然后用js遍历 ,正则检查j遍历的id是否在上一次获取的青龙变量huoqujson里面(使用正则匹配),如果没有的输出json的title和url输出到青龙变量为postdata,遍历完成后推送postdata数据到bark 推送的格式为title+url然后换行\n\n,然后把保存到青龙变量huoqujson里面(用来下次判断数据是否推送过)

//以下是符合要求的Node.js脚本,用于请求指定网址并解析JSON,并将符合条件的数据输出到青龙变量和Bark推送:


// 导入依赖库

const axios = require('axios');


// 读取上一次请求的JSON数据

let huoqujson = $persistentStore.read('huoqujson');

if (!huoqujson) {

  huoqujson = '{}';

}


// 发起HTTP请求

axios.get('http://new.xianbao.fun/plus/json/push.json').then(response => {

  const data = response.data;


  // 解析JSON字符串

  const pushData = JSON.parse(data);


  // 初始化存储推送信息的数组

  const postData = [];


  // 遍历推送数据

  pushData.forEach(item => {

    const id = item.id.toString();

    const regex = new RegExp(id, 'g');


    // 如果ID没有在上次获取的JSON中出现过,则推送数据

    if (!huoqujson.match(regex)) {

      postData.push({

        title: item.title,

        url: item.url

      });

    }

  });


  // 如果存在需要推送的数据,则推送到Bark

  if (postData.length > 0) {

    let pushContent = '';

    postData.forEach(item => {

      pushContent += item.title + item.url + '\n\n';

    });

    console.log(pushContent);

    $notify('新推送提醒', '', pushContent);

  }


  // 将本次获取的JSON数据保存为上次获取的JSON

  $persistentStore.write(data, 'huoqujson');

}).catch(error => {

  console.log(error);

});

//需要注意以下几点:


//需要安装axios库用于发起HTTP请求:npm install axios

//需要使用JSON.parse()函数解析JSON字符串

//需要使用正则表达式判断ID是否在上次获取的JSON中

//需要使用$persistentStore对象读取和写入青龙变量数据

//需要使用$notify函数推送消息到Bark

    这样子GPT就写好了bark的推送教程,这个是利用青龙面板配置的bark进行推送,格式是 item.title + item.url + '\n\n' , 可以自己根据自己的需求改下代码。如果需要筛选的还可以在 pushData.forEach 遍历的时候添加一个正则判断 title符合“红包|bug”的才继续 否则跳过。(也可以在第一次下发命令的时候就告诉它 title符合“红包|bug”的才继续,不然跳过)。同样也可以让他筛选分类,就是加这个正则判断语句。

 // 匹配title中包含"红包"或"bug"的数据

const titlePattern = /红包|bug/i;

  if (!titlePattern.test(item.title)) {

    return;

  }


 // 匹配catename中包含赚客吧"的数据

const catePattern = /赚客吧/i;

  if (!catePattern.test(item.catename)) {

    return;

  }

image.png



    

再来个例子:

用青龙面板帮我写一个nodejs脚本:请求网址http://new.xianbao.fun/plus/json/push.json  ,获取到请求的内容后解析json,然后用js遍历 ,正则检查遍历的id是否在上一次获取的青龙变量huoqujson里面(使用正则匹配),如果没有的输出json里面的title和url输出到青龙变量为postdata,其中title使用正则匹配需要满足“红包|bug”,否则跳过这个遍历,遍历完成后推送数据postdata到gocqhttp qq机器人 推送的格式为title+url然后换行\n\n,然后把保存到青龙变量huoqujson里面(用来下次判断数据是否推送过)

const axios = require('axios');

const cheerio = require('cheerio');


(async () => {

    // 获取之前脚本保存的huoqujson

    let huoqujson = $env.huoqujson;

    

    // 请求数据

    const response = await axios.get('http://new.xianbao.fun/plus/json/push.json');

    const jsonData = response.data;

  

    // 遍历数据

    let postdata = "";

    for (let item in jsonData) {

        let id = jsonData[item].id;

        // 使用正则检查id是否在huoqujson里面

        let found = new RegExp(id).test(huoqujson);

        if (!found) {

            let title = jsonData[item].title;

            let url = jsonData[item].url;

            if (/红包|bug/.test(title)) { // 使用正则匹配title

              // 格式化输出数据,加入到postdata里面

              postdata += title + url + "\n\n";

            }

            // 把id加入到huoqujson里面,保存起来

            huoqujson += id + ",";

        }

    }

    // 把postdata保存到青龙变量

    $env.postdata = postdata;

    // 把新的huoqujson保存到青龙变量

    $env.huoqujson = huoqujson;

    // 推送postdata到gocqhttp qq机器人

    await axios.post('http://127.0.0.1:5700/send_group_msg', {

        group_id: "123456789", // 这里填写你的qq群id

        message: postdata,

    });

})();

在这个脚本中,我们首先用axios库向需要获取的网址(http://new.xianbao.fun/plus/json/push.json)发送了一个HttpGet请求,并把返回的json数据保存到jsonData中。


然后我们用for循环来遍历这个json数据。在遍历过程中,我们首先检查遍历到的id是否在之前保存的huoqujson中,这里我们使用了正则表达式来匹配。如果id在huoqujson里面,说明之前已经处理过了,我们跳过这个id。否则,我们使用正则表达式匹配title,确定是否需要输出这个数据。如果需要输出,我们就把它按照要求格式化输出到postdata里面。


在遍历完所有数据后,我们把postdata保存到青龙变量中,然后把新的huoqujson保存起来。最后我们用axios库向gocqhttp qq机器人发送HttpPost请求,把postdata推送到指定的qq群中。


image.png


定时规则是使用cron表达式,不会可以去在线Cron表达式生成器 (qqe2.com) 进行生成。

image.png


除了推送实时内容,还可以去请求排行榜数据,每隔半小时推送一次热门排行榜到你的群或者别的地方,需要自己发挥,有一点点技术搞起来是最好的了。

image.png


欢迎进群探讨线报酷技术交流群:645555152 ,进群密码需要自己找之前的文章有暗号(每一个微信群聊机器人推送的时候都有一个统一的后缀,需要设置过微信群推送或者在微信机器人推送的教程里面有)。

线报酷内部交流互动版块 (已有6条评论)

欢迎您发表评论:

交流列表

线报酷评论头像
2023-07-13 11:22:03
这个功能泰裤辣~希望大佬能完善一下,让不懂技术的小白也能早日用上青龙推送,就不用电脑日常保持开机了[s-daku]
线报酷评论头像
2023-05-15 12:05:47
刚注册,回复下
线报酷评论头像
2023-05-12 00:14:23
我是为了推送买了个服务器装win…家里玩客云刷了系统装上了青龙还在挂京东…这服务器买的…
线报酷评论头像
2023-05-12 09:13:20
@dayubaba 花了200+买了个设备,挂京东黑完了,小米步数硕果仅存一个手机号,就挂这一个玩意
线报酷评论头像
2023-05-12 08:21:29
@dayubaba windows可视化,对小白上手简单,并且筛选什么的都是跟随用户中心,只需要一登陆就可以同步和油猴插件就可以。
这个设置起来都是一行行代码,并且设置多个重复推送(例如发几个群,每个**不一样的)还是需要懂复制代码的,对小白难一点。
线报酷评论头像
2023-05-12 07:50:32
@dayubaba 哈哈哈哈或哈哈或或或或或或哈哈