基于opencli与Chrome/Chromium浏览器桥接的轻量级自动化技能。无需付费API即可控制浏览器,支持502条命令覆盖79个网站,可自动化操作知乎热榜、豆包聊天、B站等平台。适用于浏览器自动化操作、网页数据抓取、AI聊天机器人控制及连续对话任务执行。
基于 opencli + Chrome/Chromium Browser Bridge,实现轻量化浏览器自动化
实战验证:2026-04-06 成功测试知乎、豆包连续对话!
用户需拥有以下任一浏览器(Edge/Chrome Beta/Chrome Dev 均可):
opencli-extension.zip(已备份至 D:\BaiduSyncdisk\Workbuddy\backup\)edge://extensions/ 或 chrome://extensions/powershell
opencli doctor
输出应显示:
text
Extension: connected ✅
⚠️ 重要:Chrome Beta 必须保持运行,扩展才能连接。关闭浏览器后需重新打开才能恢复。
命令用途opencli doctor检查扩展连接状态opencli daemon status查看守护进程状态(PID/端口/内存)opencli operate open <URL>打开网页opencli operate state获取页面可交互元素列表opencli operate click <index>点击元素(按索引)opencli operate type <index> <text>输入文字opencli operate screenshot [path]截图opencli operate eval <js>执行 JavaScriptopencli operate wait [秒数]等待页面加载opencli operate scroll [px]滚动页面
命令用途opencli explore <url>探索网站,自动发现可用接口、API、存储结构opencli generate <url>一键:探索→合成→注册,直接生成新命令opencli cascade <url>策略级联:自动找最简单的可用策略opencli record <url>录制浏览器操作,生成 YAML 命令候选opencli validate <target>验证命令定义是否正确opencli verify <target>验证+冒烟测试opencli plugin管理插件
平台命令示例说明知乎opencli zhihu hot知乎热榜(✅已验证)B站opencli bilibili rankingB站热门视频(✅已验证)Hacker Newsopencli hn top 或 opencli hackernews topHN 热帖(✅已验证)V2EXopencli v2ex hotV2EX 热门话题36氪opencli 36kr hot36氪热榜新浪财经opencli stock <代码>A股/港股/美股行情YouTubeopencli youtube search <关键词>YouTube 搜索豆包/元宝opencli yuanbao ask "问题"腾讯元宝对话携程opencli ctrip search <目的地>携程搜索虎扑opencli tihu detail <帖子ID>虎扑帖子详情小红书opencli xhs user <用户ID>小红书用户笔记(需cookie)
豆包是字节跳动旗下的 AI 助手,支持连续对话、代码编写、图片生成等。
powershell
# 1. 先确认扩展连接
opencli doctor
# 2. 打开豆包
opencli operate open "https://www.doubao.com"
# 3. 等待页面加载
Start-Sleep -Seconds 3
# 4. 查看页面状态(找到输入框索引)
opencli operate state
# 5. 定位输入框(注意:豆包的输入框每次状态查询会变ID)
# 方法A:用 state 返回的索引,如 [162] 或 [214] 等
opencli operate type <索引> "你好,请介绍一下你自己"
# 方法B:用 JS 定位(更可靠)
opencli operate eval "document.querySelector('[data-testid=chat_input_input]')?.focus()"
# 6. 发送消息(用 JS 模拟 Enter 键,最可靠)
opencli operate eval "document.querySelector('[data-testid=chat_input_input]')?.dispatchEvent(new KeyboardEvent('keydown', {key:'Enter', code:'Enter', keyCode:13, bubbles:true}))"
# 7. 等待回复(豆包通常 3-5 秒回复)
Start-Sleep -Seconds 5
# 8. 获取回复内容
opencli operate eval "document.body.innerText"
# 9. 截图查看实际效果
opencli operate screenshot "C:\path\to\doubao_result.png"
powershell
# 每条消息发送后,输入框元素ID会变化,需要重新定位
# 流程:state → 找输入框索引 → type → eval发送
# 示例:连续对话3次
# 第1轮
opencli operate state | Select-String "chat_input"
# 假设输出:[162]<textarea ... />
opencli operate type 162 "请帮我写一首诗"
opencli operate eval "..." # 发送
# 第2轮(输入框ID变成其他数字)
opencli operate state | Select-String "chat_input"
# 假设输出:[214]<textarea ... />
opencli operate type 214 "这首诗很美!是即兴创作的吗?"
opencli operate eval "..." # 发送
功能状态示例自我介绍✅ 已验证"你好,请介绍一下你自己"文字创作✅ 已验证"写一首关于春天的七言绝句"连续对话✅ 已验证能记住前面的对话内容代码编写✅ 已验证"用Python写一个计算天数的函数"图片生成⚠️ 可用"请帮我画一幅春天的风景画"
[data-testid=chat_input_input]opencli operate click 更可靠/chat/38420299164573698 这样的对话IDpowershell
# 1. 打开热榜
opencli operate open "https://www.zhihu.com/hot"
# 2. 直接获取热榜数据(无需登录)
opencli zhihu hot
powershell
# 1. 人工在浏览器中完成登录
# 2. 之后可以直接操作
opencli operate open "https://www.zhihu.com/search?type=question&q=关键词"
Start-Sleep -Seconds 3
# 3. 滚动查看内容
opencli operate eval "window.scrollBy(0, 500)"
Start-Sleep -Seconds 2
# 4. 提取搜索结果
opencli operate eval "JSON.stringify([...document.querySelectorAll('h2, .ContentItem-title')].map(el=>el.innerText).filter(t=>t.trim()).slice(0,20))"
wait,模拟真人操作节奏powershell
# 关键步骤后截图确认
opencli operate screenshot "C:\path\to\debug1.png"
# 对比操作前后
opencli operate screenshot "C:\path\to\before.png"
# 执行操作...
opencli operate screenshot "C:\path\to\after.png"
powershell
# 获取页面所有图片链接
opencli operate eval "JSON.stringify([...document.querySelectorAll('img')].map(img=>({src:img.src,alt:img.alt})))"
# 获取对话内容(豆包等聊天页面)
opencli operate eval "document.body.innerText"
# 检查元素是否存在
opencli operate eval "document.querySelector('[data-testid=chat_input_input]') !== null"
powershell
# 滚动到指定位置
opencli operate eval "window.scrollTo(0, 500)"
opencli operate eval "window.scrollTo(0, document.body.scrollHeight)"
# 滚动查看完整内容
opencli operate eval "window.scrollBy(0, 500)"
powershell
# 固定等待
Start-Sleep -Seconds 3
# 循环等待直到页面加载完成
opencli operate state | Select-String "loading"
text
1. 确认扩展已加载
→ opencli doctor
2. 导航到目标网页
→ opencli operate open "https://example.com"
3. 获取页面元素
→ opencli operate state
4. 根据索引操作(点击/输入/滚动)
→ opencli operate click 5
→ opencli operate type 3 "搜索内容"
5. 截图确认结果
→ opencli operate screenshot
text
1. 探索网站结构
→ opencli explore "https://target-site.com"
2. 合成新命令
→ opencli synthesize <target>
3. 注册命令
→ opencli register <name>
4. 一键完成以上三步
→ opencli generate "https://target-site.com"
text
1. 人工在浏览器中完成登录
2. 在浏览器中手动完成验证(如果有)
3. 之后自动化操作会复用登录态
4. 如再次触发验证,重新人工完成
网站验证情况解决方案验证日期GitHub✅ 无需验证直接可用-36氪✅ 无需验证直接可用-Hacker News✅ 无需验证直接可用2026-04-06B站✅ 无需验证直接可用2026-04-06知乎✅ 登录后完全可用人工登录一次即可2026-04-06豆包✅ 登录后完全可用人工登录后连续对话正常2026-04-06微信⚠️ 需扫码需人工辅助-豆包图片生成⚠️ 可能跳转豆包说"我将为你绘制"2026-04-06
wait,每次操作间隔 1-2 秒opencli operate state 确认页面加载完毕opencli cascade:自动找最安全的策略问题解决方案Extension: not connected重启 Chrome Beta,确保扩展已启用守护进程未运行运行 opencli daemon 查看状态操作无响应先 opencli operate state 查看元素状态Chrome Beta 未运行手动打开 Chrome Beta 浏览器页面变空白/空用 opencli operate open 重新导航到目标页面输入框元素找不到用 state 重新定位,元素ID每次会变豆包发送后无回复检查是否跳转了页面,等待更长时间URL 显示 about:blank扩展连接断开了,重新 open 目标页面
维度opencliagent-browser浏览器复用用户已有 Chrome自带 Chromium(约 300MB)登录态完全复用真实浏览器独立 profile安装大小30KB(扩展)+ npm 包300MB命令数量502 个(79 个网站)通用操作AI 探索✅ 有(explore/generate)❌ 无推荐场景****优先使用,轻量简洁备选方案
opencli 是首选工具,理由:
agent-browser 作为备选,当:
日期测试内容结果备注2026-04-06Hacker News 热帖✅ 成功opencli hackernews top2026-04-06B站热门排行✅ 成功opencli bilibili ranking2026-04-06知乎热榜✅ 成功登录后 opencli zhihu hot2026-04-06知乎搜索✅ 成功opencli operate open + JS提取2026-04-06豆包自我介绍✅ 成功文字回复正常2026-04-06豆包写诗✅ 成功"春日七言绝句"意境优美2026-04-06豆包连续对话✅ 成功能记住之前的对话内容2026-04-06豆包写Python代码✅ 成功完整代码+示例+注释2026-04-06豆包图片生成⚠️ 可用说"我将为你绘制",可能跳转页面
作者:云爪 🐾
联系邮箱: 3834522034@qq.com
版本历史: