mirror of
https://github.com/qitoqito/psyduck.git
synced 2026-01-11 04:00:42 +08:00
| config | ||
| cookie | ||
| inviter | ||
| parse/jd | ||
| sh | ||
| static/h5st | ||
| util | ||
| .gitignore | ||
| bot.js | ||
| create.js | ||
| fileCrypto.js | ||
| main.js | ||
| package.json | ||
| qlCreate.js | ||
| README.md | ||
| template.js | ||
一、快速开始 🚀
1. 订阅配置
仓库地址:https://github.com/qitoqito/psyduck.git
定时类型: crontab
定时规则:23 */3 * * *
白名单:psyduck
执行后: cp -a /ql/data/repo/qitoqito_psyduck/. /ql/data/scripts/qitoqito_psyduck
不勾选: 自动添加任务 自动删除任务
2. 初始化步骤
-
配置文件设置
- 打开
qitoqito_psyduck/config目录 - 重命名
demo.ini为config.ini - 填写必要参数,需要删除配置项前的分号
;
- 打开
-
必填参数配置
[env] QINGLONG_ClientId=your_client_id QINGLONG_ClientSecret=your_client_secret获取路径:青龙面板 → 系统设置 → 应用设置 → 创建应用 → 权限 → 环境变量,定时任务
[cache] type=缓存类型开启缓存: 开启后自动跳过已执行账户
选择json缓存,请定期清理
qitoqito_psyduck/temp目录选择redis缓存,请正确填写
host,port,password,db选项 -
安装项目依赖
打开Bug龙终端: docker exec -it qinglong bash
cd /ql/data/scripts/qitoqito_psyduck/ npm install -
安装LibreSSL
cd /ql/data/scripts/qitoqito_psyduck/sh && chmod +x libressl.sh && ./libressl.sh && node ./libressl.js安装完成,在config.ini添加curlPath=/opt/psyduck/curl/bin/psyduck-curl
-
将Bug龙订阅的执行后改为
cp -a /ql/data/repo/qitoqito_psyduck/. /ql/data/scripts/qitoqito_psyduck && task qitoqito_psyduck/qlCreate.js now
二、配置详解
1. Sign 服务配置
# 部署 Sign 服务
自选一个安装
https://hub.docker.com/r/qninq/signapi (框架兼容性最好)
https://hub.docker.com/r/zhx47/jd_sign
https://hub.docker.com/r/seansuny/jd-sign
注意: N1盒子只能安装:https://hub.docker.com/r/seansuny/signapi
docker run -dit \
--name official \
--restart always \
--hostname official \
-p 9527:80 \
qninq/signapi:latest
# 配置文件添加
jdSign=http://ip:9527/jd/sign
2. Redis 服务配置
# 部署 Redis 服务
docker run -itd --name redis -p 6379:6379 --restart=always redis --requirepass 你的密码
# 配置文件修改
host= # Redis地址,只需ip地址
port= # Redis端口
password= # Redis密码,如无设置请留空
db= # Redis Db,0-15随意选一个
3. 通知配置
# telegram
TELEGRAM_TOKEN=
TELEGRAM_ID=
TELEGRAM_URL=自定义TG代理链接
TELEGRAM_PROXY=代理服务器
# bark
BARK_TOKEN=
BARK_URL=自定义url
BARK_SOUND=自定义铃声
# 钉钉
DINGTALK_TOKEN=
DINGTALK_SECRET=密钥
# igot
IGOT_TOKEN=
# server酱
FTQQ_TOKEN=
# pushplus
PUSHPLUS_TOKEN=
PUSHPLUS_TOPIC=群组
# 企业微信
WEIXIN_TOKEN=
# 企业微信AM
WXAM_TOKEN=
4. INI 文件配置
在iniPath目录(默认qitoqito_psyduck/config)自行创建分类配置文件,如jd.ini
# 脚本配置示例
[jd_task_test]
abc=234
本框架不支持环境变量,此设置相当于其他脚本使用的环境变量: export jd_task_test_abc=123
脚本日志头如带有[Field]标识,请按要求修改添加到配置文件中
三、项目结构
项目目录
├── util/ # 工具函数
├── parse/ # 解析脚本
├── temp/ # 缓存文件
├── static/ # 静态资源
├── cookie/ # 数据存储
├── config/ # 配置文件
├── log/ # 日志文件
├── template.js # 核心模板
├── main.js # 入口文件
└── qlCreate.js # 青龙配置
四、使用说明
1. 基本用法
node main.js filename [-help n -custom x -thread x]
2. 脚本配置 Profile 📝
| 参数 | 用法 | 说明 |
|---|---|---|
| 🎯 任务相关 | ||
task |
n, n|m, n:m, tn, pin, pin1|pin2 |
指定执行账户,例如 t5 表示执行前 5 个账户 |
help |
同 task | 指定被助力的账户 |
exclude |
同 task | 指定需要排除的账户 |
thread |
n |
并发执行任务数量 |
| 🕒 时间控制 | ||
startTime |
2025-02-05 16:03:35 或时间戳 |
任务开始时间 |
endTime |
2025-02-05 16:03:35 或时间戳 |
任务结束时间 |
interval |
毫秒数,如 1000 |
账户间执行间隔时间 |
delay |
毫秒数,如 1000 |
API 调用等待时间 |
| 🌐 代理设置 | ||
proxy |
http://ip:port |
指定代理服务器地址 |
proxyUrl |
代理 API 地址 | 可设为全局变量或脚本变量 |
pool |
参考 config.proxy |
代理池配置,可全局或单独设置 |
seconds |
数字 | 代理 IP 更换间隔(秒) |
| 🔄 运行模式 | ||
model |
user, share, team, shuffle |
框架运行方式选择 |
[示例脚本]
# 基础配置
task=1 # 执行1号账户
thread=3 # 3个任务并发执行
interval=1000 # 每个账户执行间隔1秒
# 时间控制
startTime=2025-02-05 08:00:00 # 指定开始时间
endTime=2025-02-05 20:00:00 # 指定结束时间
# 代理设置
proxy=http://127.0.0.1:7890 # 使用本地代理
3. 缓存说明
- 位置:
[cache]节点 - 功能:开启后自动跳过已执行账户
4. 代理设置
proxyGroup= # 静态代理池,适用长期有效ip,需要自行创建proxy.ini
proxyUrl= # 代理ip请求地址
pool= # 代理池缓存数量,为正整数时候,框架向proxyUrl获取n个ip存储在代理池,运行账号依次取出ip,数量小于n时,自动补充ip. n为-1时,取一个ip,运行账户共用此ip
seconds= # 代理ip每隔几秒换新一个
proxy= # 代理ip
proxyUrl,proxyGroup,proxy自选一个使用,无需同时设置
使用proxyUrl模式,pool,seconds参数必须同时设置
在config.ini设置为全局参数,如只想作用于某个脚本,可在脚本节点单独设置
5. relayApi安装
项目地址: https://github.com/xoyoxoyo/relayApi
该项目实现本地数据转发,解决部分脚本因IP引起的运行问题
6. 注意事项
- 订阅时禁用自动任务管理
- 确保配置文件格式正确
- 注意权限设置
- 不支持旧版本bug龙安装使用
五、常见问题
-
配置解析失败
- 检查分号是否删除
- 确认格式是否正确
-
运行异常
- 检查依赖安装
- 确认权限配置
-
推送失败
- 验证通知配置
- 检查网络连接
-
活动火爆
- Docker容器网络选择host
- 安装libressl