收起左侧

为什么我的青龙签到代码每次都是打卡失败, cookies可能已经过期或站点更新.

4
回复
880
查看
[ 复制链接 ]

15

主题

60

回帖

0

牛值

fnOS系统内测组

社区上线纪念勋章

2024-10-13 01:55:40 显示全部楼层 阅读模式
const axios = require('axios');
const cheerio = require('cheerio');

// 更新后的 Cookie 值
const cookies = {
    'pvRK_2132_saltkey': '********',
    'pvRK_2132_lastvisit': '***********'
};

// 将 Cookie 对象转换为 HTTP 请求头格式
const cookieHeader = Object.entries(cookies).map(([key, value]) => `${key}=${value}`).join('; ');

// 设置请求头
const headers = {
    'Cookie': cookieHeader,
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36',
    'Referer': 'https://club.fnnas.com/', // 网站的主页地址,可能需要根据您的实际情况进行修改
    'X-Requested-With': 'XMLHttpRequest' // 有些网站需要这个字段
};

async function signIn() {
    try {
        // 发送签到请求
        const response = await axios.get('https://club.fnnas.com/plugin.php?id=zqlj_sign&sign=25ef1716', {
            headers: headers
        });

        if (response.data.includes('恭喜您,打卡成功!')) {
            console.log('打卡成功');
            await getSignInInfo();
        } else if (response.data.includes('您今天已经打过卡了,请勿重复操作!')) {
            console.log('已经打过卡了');
        } else {
            console.log('打卡失败, cookies可能已经过期或站点更新.');
        }
    } catch (error) {
        console.error('签到请求失败:', error.response ? error.response.data : error.message);
    }
}

async function getSignInInfo() {
    try {
        const response = await axios.get('https://club.fnnas.com/plugin.php?id=zqlj_sign', {
            headers: headers
        });
        const $ = cheerio.load(response.data);
        const content = [];
        const patterns = [
            { name: '最近打卡', selector: 'li:contains("最近打卡")' },
            { name: '本月打卡', selector: 'li:contains("本月打卡")' },
            { name: '连续打卡', selector: 'li:contains("连续打卡")' },
            { name: '累计打卡', selector: 'li:contains("累计打卡")' },
            { name: '累计奖励', selector: 'li:contains("累计奖励")' },
            { name: '最近奖励', selector: 'li:contains("最近奖励")' },
            { name: '当前打卡等级', selector: 'li:contains("当前打卡等级")' }
        ];

        patterns.forEach(pattern => {
            const elements = $(pattern.selector);
            if (elements.length > 0) {
                const elementText = elements.text().replace(/.*:/, '').trim();
                if (elementText) {
                    content.push(`${pattern.name}: ${elementText}`);
                }
            }
        });

        console.log(content.join('\n'));
    } catch (error) {
        console.error('获取打卡信息失败:', error.response ? error.response.data : error.message);
    }
}

signIn();

收藏
送赞 1
分享

15

主题

60

回帖

0

牛值

fnOS系统内测组

社区上线纪念勋章

2024-10-13 01:56:17 楼主 显示全部楼层
有没有大神帮我看看

0

主题

3

回帖

0

牛值

江湖小虾

2024-10-14 09:31:12 显示全部楼层
返回的 HTML 内容可能没有编码,导致没有你设定的关键词。把这个输出看看,到底输出的啥玩意。else {
            console.log('打卡失败, cookies可能已经过期或站点更新.');

1

主题

794

回帖

170

牛值

热心解答组

社区共建团荣誉勋章

2024-10-14 09:45:58 显示全部楼层
开头的两个依赖装了吗?

0

主题

1

回帖

0

牛值

江湖小虾

2025-5-14 23:57:54 显示全部楼层

打卡地址那个你没修改 改成自己的
image.png

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1

查看全部评分

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则