做区块链空投自动脚本

2026-03-03 16:19

梦做区块链空投监控自动脚本的? Solana 清仓监控空投机器人(精准复刻版)

一、界面布局

1. 基础配置区域

字段 类型 说明

我的铸币地址 输入框 你要空投的代币铸造地址(截图示例:EeeDYqE8YPqSJFdNDa9cSAzA88SuZH57J3hgUATgL7)

监控目标地址 输入框 要监控清仓的代币地址(截图示例:7nePACJng88s1KFJptgaBvZYgHaUDzdgdU65EtVpump)

筛选周期(秒) 数字输入 默认 30 秒 可自行调整

自定义识别名 输入框 用于标记当前配置,如 NotinRetardEducation

2. 平台选择

复选框:OKX、JUP(Jupiter)、DFLOW(这三个)



3. 筛选策略区域

每个条件前面有复选框,后面有输入框,可自由调整



条件 输入框类型 截图默认值 说明

最小买入金额 (USDC) 数字 150 用户任意一笔买入金额 ≥ 阈值

最小交易次数 数字 2 用户在目标代币上的总交易次数 ≥ 阈值

最大交易次数 数字 100 用户在目标代币上的总交易次数 ≤ 阈值

SOL 持仓阈值 数字 0.001 用户的 SOL 余额 ≥ 阈值(单位 SOL)

首次交易金额阈值 (USDC) 数字 150 用户首次买入该代币的金额 ≥ 阈值

最大有效 SPL 代币数量 数字 9 用户持有的不同 SPL 代币种类 ≤ 阈值

4. 空投策略

固定空投金额:数字输入框,示例 759.6(直接填写代币数量,就是空投759.6个我的代币)



5. 操作面板

按钮:停止监控、刷新余额、黑名单管理(截图显示这三个,按实际保留)



6. 状态栏

项目 说明

当前配置 显示自定义识别名(如 NotinRetardEducation)

已空投地址数 累计成功空投数量(实时更新)

我的 SOL 余额 当前钱包余额(可几十秒更新一次)

买入用户数 截图显示 (监控期内独立买家数量)

7. 双日志区域

左侧“空投日志”:只显示成功空投记录,格式严格按截图:



text

4za15x8xYPt4t04Xtz8zefj3JK6QREk5Z8cQhYDYJdHxw, 策略:

清仓, 金额: 759.60 代币

[05:49:07] 地址:

DkUvjHL3rpAWNFDc5Hvh7HzPuLLgZRxB4E5h1hJFKKM, 策略:

清仓, 金额: 759.60 代币

右侧“日志输出”:显示系统运行日志,格式为 [时间] [级别] 消息,包括:



[INFO] 处理完成 0 个地址



[INFO] GeckoTerminal: 价格 $0.001608978014



[INFO] 开始 monitorAndAirdrop...



[INFO] 使用缓存的加池地址,数量:27



[INFO] 获取最新 DeFi 活动地址...



[INFO] 获取到 100 条 DeFi 活动



[INFO] 获取到 0 个候选记录



[INFO] 过滤后剩余 0 个记录



[INFO] 共找到 324 个加选钱包地址



[INFO] 使用缓存的加选地址,数量:324



8. 缓存机制

截图中有“共找到 324 个加选钱包地址”、“使用缓存的加选地址,数量:324”的日志,说明脚本维护了一个内存地址池缓存。建议实现一个简单的 Set 记录发现的与目标代币相关的地址(如买家地址),并在日志中输出缓存大小。



二、核心功能逻辑(与技术细节)

1. 数据获取

数据源:Helius 付费 RPC + REST API(用户提供 HELIUS_API_KEY)



轮询方式:每 筛选周期 秒(默认 30 秒)获取指定代币的最新 100 条交易(通过 Helius 的 /v0/addresses/{mint}/transactions 接口)



去重:记录已处理的交易签名,避免重复



2. 清仓检测

检测卖出:从交易 tokenTransfers 中找出代币转出方(卖家)



判断清仓:卖出后立即查询该地址该代币余额,余额为 0 才判定为清仓(账户不存在也视为余额 0)



3. 筛选条件实现(所有条件考虑启用状态)

条件 实现方式 关键点

交易次数 Helius getTransactionsForAddress + 过滤 tokenMint 必须针对目标代币,非钱包总次数

SOL 余额 connection.getBalance 单位 SOL

持有代币种类 connection.getTokenAccountsByOwner 统计数量 普通 SPL 代币

最小买入金额 解析买入交易,获取数量 → 乘以当前价格 → USDC 处理代币精度(默认 9)

首次交易金额 获取最早一笔买入交易,解析数量 → 换算 USDC 可用当前价格近似

平台筛选 优先 tx.source(JUPITER、OKX 等),备选程序 ID 需提供正确程序 ID

4. 空投执行

空投数量:用户输入的固定值(如 759.6),按精度转换为最小单位



自动创建 ATA:若接收方无关联账户,自动创建并扣租金



批量处理:每批 ≤5 个地址,批次间隔 2 秒



失败重试:最多 3 次,记录错误



去重:内存记录已空投地址,避免重复



5. 统计与界面更新

买入用户数:检测到买入时,买家地址入 Set,实时更新界面



候选/有效地址数:每轮统计后更新



已空投地址数:成功空投后累加



SOL 余额:可手动刷新(通过 RPC)



价格显示:通过 GeckoTerminal 获取并显示



6. 动态更新

用户修改配置(如空投金额)后点击“更新”,正在运行的监控实时采用新参数,无需重启



三、交付物要求

完整源代码文件:



main.js、preload.js、renderer.js、index.html



worker.js(监控核心,可用子进程)



package.json、.env.example



清晰 README,说明安装、配置、运行步骤



测试网演示:开发者需提供测试代币,演示功能正常



四、注意事项(开发者必读)

清仓必须严格判断余额为 0,不能仅凭交易类型



交易次数必须针对目标代币(用 Helius 付费方法)



所有筛选条件必须可独立



界面布局、日志格式必须与截图完全一致



平台筛选优先用 tx.source,备选程序 ID



实现简单的内存缓存,并在日志中输出大小



动态更新需实时生效
已有5人报名
*************
*************
浏览 229
点赞
2评论
1收藏
4分享

手机扫一扫分享

分享
举报
评论
图片
表情
全部评论
coolingshooter2026-03-03 16:42
经验太丰富可做
点赞回复
yy2026-03-03 16:42
经验丰富可做
点赞回复
推荐
点赞
2评论
1收藏
4分享

手机扫一扫分享

分享
举报