https://, http://, www., 浏览器, CDP, 截图, 网页, mp.weixin, 打开网页, 网页截图
连 CDP,开网页,截图,执行 JS。
urlgo status → CDP 开了没?没开就 urlgo starturlgo open → 打开页面AVOID:
urlgo 脚本不在系统 PATH 中,直接调用报 command not found。
解法:调用前将技能目录加入 PATH,或在命令中指定 skill base dir:
export PATH="$PATH:$(dirname $(readlink -f $0))/.."
或使用 skill base dir 全路径调用 python3 。
旧版 cmd_start() 用 subprocess.run + shell & 启动浏览器。urlgo 脚本退出后,shell 向子进程发 SIGHUP,浏览器随之退出。表现为 urlgo start 后立即 urlgo open 报"CDP 未开启"。
解法:改用 subprocess.Popen(start_new_session=True)(Linux)或 DETACHED_PROCESS(Windows),断开浏览器与脚本的进程组关联。
旧版有 5~10 秒循环轮询 CDP 端口,bash tool 下呈阻塞态,用户需中断。中断后旧版浏览器进程被连带杀死。
解法:新版无额外阻塞,最长等待 15 秒后超时返回。
bash tool 捕获 stdout 时 Python 启用块缓冲,print 输出积压不刷,bash tool 见"no output"即超时中断,误判为脚本假死。
解法:脚本入口加 sys.stdout.reconfigure(line_buffering=True),每行输出即刷。
| 命令 | 说明 |
|---|---|
| ------ | ------ |
urlgo status | 检查 CDP |
urlgo start | 启动浏览器 |
urlgo list | 查看页面 |
urlgo open | 打开网页 |
urlgo screenshot | 截图 |
urlgo snapshot | 读取内容 |
urlgo eval | 执行 JS |
urlgo click | 点击 |
urlgo type | 输入 |
# 先加 PATH(如不在系统 PATH 中)
export PATH="$PATH:/path/to/urlgo/skill/dir"
# 启动浏览器(后台运行,不会阻塞)
urlgo start
# 打开网页
urlgo open https://example.com
# 读取内容 / 截图
urlgo snapshot 1
urlgo screenshot 1 /tmp/a.png
curl, websockets(Python)
共 2 个版本