首页/编程/python/文章阅读

每日随机时间执行nodeseek自动签到脚本

python 2025-08-13 31 0

项目地址:https://github.com/yowiv/NodeSeek-Signin

这篇文章是如何使用这个脚本,并且每天随机一个时间执行签到,不至于天天签到同一个时间,容易被人逮着跑自动签到。

1、部署自动签到

例如我习惯使用宝塔,所以在宝塔下面新建文件夹

cd 到这个文件夹,例如:cd /www/wwwroot/auto

之后下载项目完整文件,例如 wget https://github.com/yowiv/NodeSeek-Signin/archive/refs/heads/main.zip

解压文件,在执行脚本 test_run.py 同级创建一个 .env 文件,权限改成 755 www 即可。

文件内填写内容:

NS_COOKIE=1&2&3

账户配置

USER1=your_username2

PASS1=your_username2

USER2=your_username2

PASS2=your_password2

— 验证码配置 (二选一) —

方案A: 自建 CloudFreed 服务

SOLVER_TYPE=turnstile API_BASE_URL=http://your_cloudflare_service_ip:3000 CLIENTT_KEY=your_cloudfreed_client_key

方案B: YesCaptcha 服务

SOLVER_TYPE=yescaptcha

# YesCaptcha 国内节点: https://cn.yescaptcha.com, 国际节点: https://api.yescaptcha.com

API_BASE_URL=https://api.yescaptcha.com

CLIENTT_KEY=your_yescaptcha_client_key

功能配置

NS_RANDOM=true

每日运行时间配置

支持固定时间 (例如 ‘09:00’) 或随机时间范围 (例如 ‘08:00-10:59’)

如果不设置,默认为 ‘08:00-10:59’

RUN_AT=09:00

RUN_AT=08:00-10:59

通知配置

TG_BOT_TOKEN=“TG”

TG_USER_ID=“ID”

TG_THREAD_ID=“1”

模拟Docker环境,用于本地测试

IN_DOCKER=true

我这边是使用的cookies的方式,若是想使用账号密码方式请自行摸索。

注意:cookie模式大概有效期一个月,当cookie过期就无法签到,到时候需要进入 .env 文件更新账号新的cookie才行

填写完毕后,可以在本级目录下,使用 python3 test_run.py 执行一次,不出意外即可成功实现签到。

若使用宝塔定时签到需要修改文件test_run.py中的引用为完整地址。

至此签到已经可以正确运行。

但是我需要的是随机时间签到,而不是每天同一个时间准点签到。这样做,可以让我们看起来更像是一个真人,而不是一个定时定量准时签到的无情机器。

2、随机时间签到

我的做法是在目录下新建一个 sh 脚本,每天定时执行这个脚本,然后这个脚本每天随机等待一定的时间才开始运行自动签到程序。

脚本如下:脚本是gemini写的,每天的7点执行

#!/bin/bash

定义要执行的Python脚本路径

TARGET_SCRIPT=“/www/wwwroot/moren.com/nodeseek/test_run.py”

echo “已进入sh脚本!”

使用一个无限循环来确保脚本在目标时间已过时能重新计算

while true; do # 生成一个 7:00 到 22:00 之间的随机秒数 # 15 小时 (22-7) = 54000 秒,随机范围 0-54000 random_seconds=$(( RANDOM % 54001 ))

# 计算目标执行时间(今天的 7:00 + 随机秒数)
# 使用 date 命令的 +%s 格式化,将时间转换为时间戳
target_time=$(date -d "7:00 today + $random_seconds seconds" +%s)

# 获取当前时间的时间戳
current_time=$(date +%s)

# 如果目标时间已过,输出提示并重新进入循环
if [ "$target_time" -lt "$current_time" ]; then
    echo "目标时间已过,重新计算中..."
    continue
fi

# 计算需要等待的秒数
delay_seconds=$(( target_time - current_time ))

# 将目标时间戳格式化为可读的时间
readable_time=$(date -d "@$target_time" +"%H:%M:%S")

echo "将在 $delay_seconds 秒后 ($readable_time) 执行脚本."
sleep "$delay_seconds"

# 执行你的 Python 脚本
echo "正在执行 $TARGET_SCRIPT ..."

# 使用 if/else 结构来检查脚本是否成功执行
if python3 "$TARGET_SCRIPT"; then
    echo "脚本执行成功!"
    # 成功后退出循环
    break
else
    # 失败后输出错误信息并退出
    echo "执行脚本时出错,退出."
    break
fi

done

这里我也想到还有一个问题的存在,就是我目前使用2个账号,这2个账号的签到间隔没有隔开,若是真的打击自动签到,那2个账号天天都是相差不到几秒钟一起签到,而且还用的是同一个IP地址,是个人都能看出问题。

同时也是在赌,毕竟是一个打发闲暇时间的vps论坛而已,自是不必较真。


才发现,scheduler.py 作者本来就考虑到随机时间签到了,是我多次一举了。

但都差不多,我就这么用了。

正文结束

akile.io自动签到获取AK币脚本第3版Hostdzire洛杉矶4C6G+100GB磁盘+25TB出口流量vps测试

评论区

还没有评论,来坐沙发吧。