写一套适合此款的ai闲鱼自动完成做每日脚本

2779787834 · 1 天前

回答

Hamibot AI
1
· 1 天前

闲鱼官方对自动化操作有严格的风控策略,频繁或机械化的交互容易触发账号限制。Hamibot 提供基于无障碍服务的 UI 自动化能力,结合外部 AI API 可实现智能决策。以下提供一套兼容 Rhino 1.7.15 引擎的基础脚本框架,涵盖每日任务核心流程、设备适配方法与 AI 接入示例。

基础脚本框架

// 文档地址 https://docs.hamibot.com/
"auto";

var config = {
    packageName: "com.taobao.idlefish",
    taskList: ["签到", "浏览商品", "点赞"],
    maxRetries: 3,
    delayMin: 1500,
    delayMax: 3500
};

function randomDelay() {
    var delay = Math.floor(Math.random() * (config.delayMax - config.delayMin + 1)) + config.delayMin;
    sleep(delay);
}

function launchApp() {
    launch(config.packageName);
    waitForPackage(config.packageName, 8000);
    randomDelay();
}

function handlePopups() {
    var popupKeywords = ["立即签到", "知道了", "取消", "允许", "稍后再说"];
    for (var i = 0; i < popupKeywords.length; i++) {
        var btn = text(popupKeywords[i]).findOne(1000) || desc(popupKeywords[i]).findOne(1000);
        if (btn) {
            btn.click();
            randomDelay();
        }
    }
}

function doSignIn() {
    var signInBtn = text("签到").findOne(2000) || desc("签到").findOne(2000) || textContains("签到").findOne(2000);
    if (signInBtn) {
        signInBtn.click();
        randomDelay();
        log("签到任务已触发");
    } else {
        log("未找到签到入口,跳过");
    }
}

function doBrowse() {
    for (var i = 0; i < 6; i++) {
        swipe(device.width / 2, device.height * 0.75, device.width / 2, device.height * 0.25, 800);
        randomDelay();
    }
}

function doLike() {
    var likeBtn = desc("喜欢").findOne(2000) || text("喜欢").findOne(2000);
    if (likeBtn) {
        likeBtn.click();
        randomDelay();
        log("点赞完成");
    }
}

function main() {
    if (!auto.service) {
        toast("请开启无障碍服务");
        exit();
    }
    launchApp();
    handlePopups();
    
    for (var t = 0; t < config.taskList.length; t++) {
        var task = config.taskList[t];
        log("开始执行: " + task);
        if (task === "签到") doSignIn();
        else if (task === "浏览商品") doBrowse();
        else if (task === "点赞") doLike();
        handlePopups();
        randomDelay();
    }
    
    log("每日任务执行完毕");
    back();
    sleep(1000);
    home();
}

main();

AI 决策接入方法

Hamibot 本身不内置大语言模型,需通过 HTTP 模块调用外部 AI API 实现智能判断。示例:根据页面截图或文本内容,让 AI 决定下一步操作。

function callAIForDecision(screenText) {
    var url = "https://api.your-ai-provider.com/v1/chat/completions";
    var payload = {
        model: "gpt-3.5-turbo",
        messages: [
            { role: "system", content: "你是闲鱼任务助手,仅返回下一步操作指令:click_signin, swipe, like, 或 done。" },
            { role: "user", content: "当前页面文本: " + screenText }
        ]
    };
    var res = http.postJson(url, payload, {
        headers: { "Authorization": "Bearer YOUR_API_KEY" }
    });
    if (res.statusCode === 200) {
        var json = res.body.json();
        return json.choices[0].message.content.trim();
    }
    return "done";
}

callAIForDecision 嵌入任务循环,根据返回指令动态执行对应操作。注意控制请求频率,避免触发 API 限流。

设备适配与稳定性优化

  1. 避免硬编码坐标:全部使用 text()desc()id()textContains() 定位元素,适配不同分辨率。
  2. 动态延迟:使用 randomDelay() 模拟人类操作间隔,降低风控概率。
  3. 异常恢复:在关键操作后加入 if (!currentPackage().equals(config.packageName)) { launchApp(); } 防止应用意外退出。
  4. 截图与 OCR 备用:当 UI 树无法获取时,使用 captureScreen() 配合 ocr 模块识别关键按钮。
  5. 日志记录:使用 log() 输出执行状态,便于在 Hamibot 控制台查看运行轨迹。

部署与调度

  1. 将脚本保存为 .js 文件,上传至 Hamibot 控制台「开发」→「创建脚本」。
  2. 在「设备管理」中绑定目标手机,确保无障碍服务与悬浮窗权限已开启。
  3. 使用「定时任务」功能设置每日执行时间(如 09:00、14:00),Hamibot 会自动唤醒设备并运行脚本。
  4. 开启「运行日志」与「失败重试」,便于监控任务状态。

合规与安全提醒

  • 闲鱼用户协议明确限制自动化操作,脚本仅建议用于个人账号的轻量辅助,避免高频、批量或跨账号操作。
  • 不要使用脚本进行刷单、虚假交易、恶意引流等行为,否则可能导致封号。
  • 定期更新脚本以适配闲鱼版本迭代,UI 结构变化时需重新定位元素选择器。
  • 外部 AI API 调用需自行管理密钥与费用,Hamibot 不提供第三方服务计费。

如需针对特定闲鱼版本或具体每日任务(如“逛一逛”、“鱼塘打卡”、“发布擦亮”)细化逻辑,提供当前页面 UI 结构或任务名称,我可为你补充对应选择器与流程分支。

ℹ️ 内容由 AI 生成,可能不准确,请注意核实