在Docker中配置 OpenClaw实现带状态的网页自动化的解决方案

在Docker中配置 OpenClaw实现带状态的网页自动化的解决方案bin bash openclaw chrome start sh 一键启动 Chrome 带状态持久化 Cloudflare Tunnel 智能抓取并拼接完整的 WebSocket URL 带浏览器 ID CHROME DATA DIR HOME openclaw chrome data echo e 启动 033 0

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



#!/bin/bash # openclaw-chrome-start.sh # 一键启动 Chrome(带状态持久化)+ Cloudflare Tunnel # 智能抓取并拼接完整的 WebSocket URL (带浏览器 ID) CHROME_DATA_DIR=”\(HOME/openclaw-chrome-data" echo -e "🚀 启动 033[0;34mOpenClaw Chrome + Tunnel033[0m..." cleanup() {   echo -e " 🛑 收到关闭信号,正在清理..."   pkill -f "cloudflared tunnel" 2>/dev/null   echo -e "✅ 已安全关闭 Cloudflared Tunnel,公网访问已切断。"   echo -e "💡 Chrome 继续在本地后台运行,下次连接速度更快。"   exit 0 } trap cleanup SIGINT # 1. 检查 Chrome 是否已运行 if pgrep -f "chrome.*remote-debugging" > /dev/null; then   echo "✅ Chrome 已在运行,复用已有实例" else   echo "📱 启动 Chrome(数据目录: \)CHROME_DATA_DIR)…”   google-chrome      –remote-debugging-port=9222      –remote-debugging-address=0.0.0.0      –user-data-dir=”\(CHROME_DATA_DIR"      --headless=new      --no-sandbox      --disable-gpu      > /tmp/chrome-output.txt 2>&1 &   sleep 2  fi # 2. 启动 Cloudflare Tunnel echo "🌍 正在启动 Cloudflared Tunnel..." > /tmp/tunnel-output.txt  cloudflared tunnel --url http://127.0.0.1:9222 > /tmp/tunnel-output.txt 2>&1 & TUNNEL_PID=\)! echo ”⏳ 正在与 Cloudflare 节点建立连接获取地址 (最多等待 15 秒)…” # 3. 智能轮询获取 Tunnel URL TUNNEL_URL=“” for i in {1..15}; do   TUNNEL_URL=\((grep -o 'https://[-a-zA-Z0-9]*.trycloudflare.com' /tmp/tunnel-output.txt | head -n 1)   if [ -n "\)TUNNEL_URL” ]; then     break   fi   sleep 1 done if [ -z ”\(TUNNEL_URL" ]; then   echo -e " ⚠️ 获取超时!未能自动提取到 Tunnel 地址,请手动查看日志:"   cat /tmp/tunnel-output.txt | grep -E "ERR|INF"   pkill -f "cloudflared tunnel" 2>/dev/null   exit 1 fi # 4. 获取 Chrome DevTools 具体的 UUID 路径并拼接 echo "🔍 正在获取 Chrome 浏览器底层实例 ID..." # 把 https 换成 wss WSS_BASE="\){TUNNEL_URL/https/wss}” # 用 curl 获取 JSON 数据,并用 grep 正则提取 /devtools/browser/… 路径 WS_PATH=\((curl -s http://127.0.0.1:9222/json/version | grep -o "/devtools/browser/[a-f0-9-]*") if [ -z "\)WS_PATH” ]; then    echo -e ”⚠️ 警告:无法获取 DevTools 路径,可能是 Chrome 启动异常。”    FINAL_URL=”\(WSS_BASE" else    # 完美拼接    FINAL_URL="\){WSS_BASE}\({WS_PATH}" fi # 5. 输出最终结果 echo -e " =======================================================" echo -e "🎉 环境启动成功!" echo -e "👉 请将以下【完整】地址复制到 OpenClaw 的配置中:" echo -e "033[1;32m\)FINAL_URL033[0m” echo -e ”======================================================= “ echo -e ”🛑 保持此窗口打开。自动化执行完毕后,请按 033[0;31mCtrl+C033[0m 关闭 Tunnel。” # 挂起脚本,等待用户按 Ctrl+C wait $TUNNEL_PID

小讯
上一篇 2026-03-28 18:24
下一篇 2026-03-28 18:22

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/247559.html