如何用ego-lite自动滚动加载无限列表?scrollToBottomUntil深度解析

发布时间:2026/9/3 10:28:22
如何用ego-lite自动滚动加载无限列表?scrollToBottomUntil深度解析 如何用ego-lite自动滚动加载无限列表scrollToBottomUntil深度解析【免费下载链接】ego-liteThe fastest browser for AI agents to run browser automation, built for sharing your logged-in browser state with your AI agents, like Codex or Claude Code, without disturbing you. Zero cost, zero config.项目地址: https://gitcode.com/GitHub_Trending/eg/ego-lite如果你在用 AI 编程助手做浏览器自动化ego-lite是目前最快的 AI Agent 浏览器它让 Agent 在独立 Space 里复用你的登录态跑任务不打扰你的正常浏览零成本、零配置。本文深度解析其中的scrollToBottomUntil工具——一句话让它自动滚动加载无限列表、无限信息流直到满足你的停止条件为止无需手写脆弱的循环。为什么手动循环滚动不可靠无限列表时间线、动态流、懒加载的搜索结果是浏览器自动化的经典难题。传统做法是滚动 → 等待 → 检查是否变长但你会遇到三个坑等待时机难拿捏内容异步加载滚动太快会漏内容太慢又浪费时间停止条件写不死到底滚几屏滚到没有新内容为止还是凑够 N 条数据循环失控页面卡住时死循环滚下去任务永远不结束。scrollToBottomUntil 深度解析一个判定函数 三个参数ego-lite 的ego-browser技能把浏览器能力封装成一组 JS 工具函数snapshotText、click、scrollBy、scrollToBottomUntil 等Agent 直接调用即可。scrollToBottomUntil位于 skills/ego-browser/SKILL.md 的 Scroll / mouse 工具列表中它的签名非常简洁await scrollToBottomUntil( async () await js(String.rawdocument.querySelectorAll(article).length) 20, { step: 900, wait: 1, maxSteps: 20 } )它只需要你回答两个问题什么时候停—— 传入一个异步判定函数每滚一步就执行一次返回true即停止怎么滚——{ step: 900, wait: 1, maxSteps: 20 }表示每次滚动 900px、等待 1 秒、最多滚 20 步。maxSteps是内置的保险丝即使页面异常导致判定永远不成立也最多滚 20 步就安全退出彻底告别死循环。底层滚动由 CDP 真实滚轮事件驱动也可回退到合成 WheelEvent window.scrollBy实现见 package/ego-browser/src/driver/pointer.ts因此能触发依赖滚动事件的懒加载逻辑。无限列表自动滚动加载完整示例在 Agent CLI 中通过 heredoc 执行全程不需要你自己写循环const task await useOrCreateTaskSpace(加载时间线) await openOrReuseTab(https://x.com/ego_agent, { wait: true }) // 自动滚动直到页面上加载出 20 条文章卡片 await scrollToBottomUntil( async () await js(String.rawdocument.querySelectorAll(article).length) 20, { step: 900, wait: 1, maxSteps: 20 } ) cliLog(await js(String.rawdocument.querySelectorAll(article).length) 条已加载)三个参数怎么调参数含义建议step每步滚动像素普通页面 900px 左右避免过快跳过未渲染内容wait每步后等待秒数慢加载页面调到 1~2给异步请求留时间注意单位是秒maxSteps最大步数保险按期望内容量 ÷ 每步新增量估算再留余量4 个让滚动加载更稳的实用技巧判定函数要查 DOM 而不是滚轮位置以文章数量、列表项数量这类内容信号为准比scrollY更抗页面重排。用maxSteps做兜底而不是靠判定函数猜到底了两者是双保险缺一不可。滚完再观测滚动结束后调用snapshotText()拿到带引用标注的页面语义树或直接js()提取数据一次取全。复用任务空间ego-lite 给每个 Agent 分配独立 Space继承你的登录态。用useOrCreateTaskSpace在多轮 heredoc 间复用同一 Space滚到一半的任务下一轮可以接着做。ego-lite 还把这些经验沉淀成了可复用的领域工具例如 X 时间线场景的工具 skills/ego-browser/learnings/x-com/tools/timeline.js其背景笔记见 skills/ego-browser/learnings/x-com/notes/timeline.md——同样的滚动加载套路可直接抄作业。实测性能复杂任务最多快 2.5 倍把滚动—等待—检查写成多轮 CLI 命令会非常低效Agent 要反复调两个命令、看结果、再调两个命令。ego-lite 让 Agent 直接把多步任务写成一段 JS 代码一次跑完复杂工作流完成速度最多提升 2.5 倍token 消耗大幅减少。基准对比如下ego lite vs agent-browser4 个复杂浏览器任务相关资源与文件路径工具总览与 Scroll / mouse 示例skills/ego-browser/SKILL.md滚动/指针底层驱动package/ego-browser/src/driver/pointer.ts技能安装说明skills/ego-browser/references/install.md快速上手文档README.md总结用 ego-lite 处理无限列表只需记住一句话——把滚到哪里停写成判定函数交给scrollToBottomUntilstep / wait / maxSteps三参数控制节奏和保险丝剩下的自动滚动、异步等待、防死循环都由它兜底。【免费下载链接】ego-liteThe fastest browser for AI agents to run browser automation, built for sharing your logged-in browser state with your AI agents, like Codex or Claude Code, without disturbing you. Zero cost, zero config.项目地址: https://gitcode.com/GitHub_Trending/eg/ego-lite创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考