Token导航 LogoToken导航TokenDH.com
开发执行命令clawhub未标认证来源可访问clear审计提醒

wewe-rss-articles韦韦 RSS 文章

Agent Skill

wewe-rss-articles 用于补充开发相关能力,适合在 OpenClaw 中需要让 Agent 承接开发相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,446

周安装

98

GitHub Stars

公开资料未说明

下载量

792
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:wewe-rss-articles(韦韦 RSS 文章)
来源仓库:https://github.com/agasding/wewe-rss-articles
安装命令:
openclaw skills install wewe-rss-articles
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install wewe-rss-articles

简介

读取指定微信公众号文章列表或正文,需本地WeWe RSS服务运行并支持文章内容HTML解析为纯文本。

SKILL.md

SKILL.md - 读取微信公众号文章

触发条件

用户要求读取某个公众号的文章列表,或读取某篇文章的正文内容时激活。

前置条件

WeWe RSS 服务必须已部署并运行在 http://localhost:4000

  • 如果服务未运行或未部署 → 调用 wewe-rss-deploy Skill 进行部署
  • 部署完成后继续执行以下流程

工作流程

Step 1:获取配置路径

读取工作目录下的 tools\wewe-rss-config.txt 获取项目路径:

  • 如果文件不存在,使用默认路径:~/.openclaw/workspace/wewe-rss-main

Step 2:检查服务是否运行

netstat -ano | Select-String ":4000"
  • 如果无响应 → 调用 wewe-rss-deploy Skill

Step 3:获取公众号 mp_id

方式 A:通过公众号名称查询数据库

数据库路径:{WEWE_RSS_PATH}/apps/server/data/wewe-rss.db

import sqlite3
import os

# 读取项目路径配置
config_path = os.path.expanduser("~/.openclaw/workspace/tools/wewe-rss-config.txt")
if os.path.exists(config_path):
    with open(config_path) as f:
        wewe_rss_path = f.read().strip()
else:
    wewe_rss_path = os.path.expanduser("~/.openclaw/workspace/wewe-rss-main")

db_path = os.path.join(wewe_rss_path, "apps/server/data/wewe-rss.db")

conn = sqlite3.connect(db_path)
cursor = conn.cursor()

# 查找公众号 mp_id
cursor.execute("SELECT mp_id, nickname FROM feeds WHERE nickname LIKE ?", (f'%{公众号名称}%',))
result = cursor.fetchone()
mp_id = result[0] if result else None

方式 B:通过文章链接提取 __biz

从微信文章链接提取 __biz 参数,然后查数据库:

文章链接格式:https://mp.weixin.qq.com/s/xxxxxxxxx
__biz 参数:链接中 ?__biz=MTI0OTk2xxx
# 查询数据库获取 mp_id
cursor.execute("SELECT mp_id FROM feeds WHERE mp_id LIKE ?", (f'%{biz_str}%',))

Step 4:调用 API 获取文章列表

GET http://localhost:4000/feeds/{mp_id}.json?limit=10

请求参数:

参数类型说明
mp_idstring公众号 ID,如 MP_WXS_3223096120
limitint返回文章数量,默认 10
updatebool是否强制从微信读书更新

响应格式:

[
  {
    "content": "<article HTML content>",
    "url": "https://mp.weixin.qq.com/s/iBCNkORwkff3PL1EZD3zqw",
    "title": "文章标题",
    "image": "https://mmbiz.qpic.cn/...",
    "date_modified": "2026-04-02T02:20:36.000Z"
  }
]

curl 示例(跨平台):

curl -s "http://localhost:4000/feeds/${mp_id}.json?limit=5" --max-time 15

Step 5:解析正文内容

content 字段是完整 HTML,提取纯文本:

from html.parser import HTMLParser

class TextExtractor(HTMLParser):
    def __init__(self):
        super().__init__()
        self.text = []
        self.skip_tags = {'script', 'style', 'nav', 'footer', 'header', 'aside'}
        self.current_tag = None
    
    def handle_starttag(self, tag, attrs):
        self.current_tag = tag
        if tag in self.skip_tags:
            return
        if tag == 'p':
            self.text.append('\
')
    
    def handle_data(self, data):
        if self.current_tag not in self.skip_tags:
            text = data.strip()
            if text:
                self.text.append(text)
    
    def get_text(self):
        return '\
'.join(self.text)

# 使用
extractor = TextExtractor()
extractor.feed(html_content)
article_text = extractor.get_text()

数据库信息

表名字段说明
feedsmp_id, nickname, description公众号信息
articlesid, mp_id, title, url, publish_time文章元数据

完整调用示例

import sqlite3
import subprocess
import json
import os
from html.parser import HTMLParser

# 1. 检查服务是否运行
result = subprocess.run(['netstat', '-ano'], capture_output=True, text=True)
if ':4000' not in result.stdout:
    # CALL: wewe-rss-deploy
    pass

# 2. 获取项目路径
config_path = os.path.expanduser("~/.openclaw/workspace/tools/wewe-rss-config.txt")
if os.path.exists(config_path):
    with open(config_path) as f:
        wewe_rss_path = f.read().strip()
else:
    wewe_rss_path = os.path.expanduser("~/.openclaw/workspace/wewe-rss-main")

db_path = os.path.join(wewe_rss_path, "apps/server/data/wewe-rss.db")

# 3. 获取 mp_id
conn = sqlite3.connect(db_path)
cursor = conn.cursor()
cursor.execute("SELECT mp_id FROM feeds WHERE nickname LIKE ?", ('%数字生命卡兹克%',))
mp_id = cursor.fetchone()[0]

# 4. 获取文章列表
import urllib.request
url = f"http://localhost:4000/feeds/{mp_id}.json?limit=3"
with urllib.request.urlopen(url, timeout=15) as response:
    articles = json.loads(response.read().decode('utf-8'))

# 5. 提取第一篇文章正文
first = articles[0]
article_title = first['title']
article_url = first['url']
article_content = first['content']

# 6. 解析纯文本
extractor = TextExtractor()
extractor.feed(article_content)
article_text = extractor.get_text()

print(f"标题: {article_title}")
print(f"链接: {article_url}")
print(f"正文(前500字): {article_text[:500]}")

注意事项

  1. 服务地址:默认 http://localhost:4000
  2. 首次使用:需要先在 Web UI 登录微信读书账号并订阅公众号
  3. 更新频率:微信读书有频率限制,频繁更新可能被限流
  4. AUTH_CODE:如果 API 返回 401,检查 .env 中的 AUTH_CODE 配置

错误处理

错误原因处理方式
netstat :4000 无结果服务未运行调用 wewe-rss-deploy Skill
数据库为空未添加账号/订阅提示用户在 Web UI 中配置
API 返回 401需要 AUTH_CODE.env 中获取 AUTH_CODE
content 为空文章未缓存添加 update=true 参数强制更新
mp_id 为空公众号未订阅提示用户先订阅公众号

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

88.36%
按下载量换算700

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 openclaw skills install wewe-rss-articles 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills