install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/2720480371/wechat-look" ~/.claude/skills/clawdbot-skills-wechat-look-ocr && rm -rf "$T"
manifest:
skills/2720480371/wechat-look/SKILL.mdsource content
WeChat Look OCR - 微信文章阅读工具(支持OCR)
📋 安装要求
系统要求
- Python: 3.7 或更高版本
- Node.js: 18 或更高版本
- npm: Node.js 包管理器
安装步骤
-
安装系统依赖:
# Ubuntu/Debian sudo apt install python3 nodejs npm # macOS brew install python node # Windows # 从 https://nodejs.org/ 下载 Node.js # 从 https://python.org/ 下载 Python -
安装技能:
openclaw skill install wechat-look-ocr -
安装 Node.js 依赖:
cd ~/.openclaw/skills/wechat-look-ocr/ocr_node npm install
功能特性
- 自动URL规范化: 自动添加
参数绕过验证码?scene=1 - 内容提取: 从HTML中提取纯文本内容
- OCR文字识别: 自动识别图片中的中英文文字
- 中英文支持: 支持中文简体和英文OCR识别
- 智能回退: 中英文识别失败时自动回退到英文
- 错误处理: 友好的错误提示和重试机制
- 安全合规: 遵守OpenClaw安全规范,标记外部内容为未信任源
使用方法
在OpenClaw中直接使用:
读取微信文章 https://mp.weixin.qq.com/s/xxx
URL规范化规则
- 无查询参数 → 添加
?scene=1 - 有查询参数 → 确保包含
(覆盖重复参数)scene=1
🔧 技术实现
系统架构
该技能采用 Python + Node.js 混合架构:
- Python 层:处理 URL 规范化、HTML 内容提取、图片 URL 提取
- Node.js 层:运行 OCR 识别(使用 Tesseract.js)
- 通信方式:Python 通过 subprocess 启动 Node.js 脚本
实现原理
- URL检测: 检查是否为微信文章URL
- 参数规范化: 添加或更新
参数scene=1 - 内容获取: 使用 requests 库获取页面内容
- 文本提取: 从HTML中提取纯文本内容
- 图片处理: 提取所有图片URL
- OCR识别: 启动 Node.js 子进程进行文字识别
- 结果整合: 合并文本内容和OCR结果
- 结果返回: 提供结构化响应
📦 依赖详情
Python 依赖
- HTTP 请求库requests
- 启动 Node.js 进程subprocess
- JSON 数据处理json
- 路径操作pathlib
- 正则表达式re
Node.js 依赖
- OCR 识别引擎tesseract.js
- HTTP 请求库node-fetch
运行时行为
该技能在运行时会:
- 向微信服务器发送 HTTP 请求获取文章页面
- 下载文章中的图片用于 OCR 识别
- 启动本地 Node.js 进程进行文字识别
- 返回整合的文本和 OCR 结果
示例输出
{ "title": "文章标题", "author": "作者名", "text_content": "提取的正文内容", "image_count": 5, "ocr_text": "[图片1] 识别的文字内容...", "url": "规范化后的URL", "status": "success" }
注意事项
- 仅支持微信公众号文章链接
- 遵守微信访问频率限制
- 外部内容标记为未信任源
- 如遇到验证码问题,请确保URL正确包含
scene=1