Automates the collection and organization of WeChat articles.

Install

mkdir -p .claude/skills/wechat-batch-crawl && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/14736" && unzip -o skill.zip -d .claude/skills/wechat-batch-crawl && rm skill.zip

Installs to .claude/skills/wechat-batch-crawl

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

| Intent | Supported Phrases | |--------|-------------------| | 爬取今天 | "爬取今天的微信文章" / "获取今天的文章" / "抓今天的公众号" | | 爬取昨天 | "爬取昨天的微信文章" / "获取昨天的文章" | | 爬取指定日期 | "爬取1月20号的文章" / "获取上周一的文章" | | 仅列出 | "今天有哪些文章" / "列出今天的文章" / "看看有啥新文章" | | 增量爬取 | "继续爬取" / "爬取新增的文章" |
256 chars · catalog descriptionno explicit “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Intermediate

Key capabilities

  • Crawl WeChat official account articles by date.
  • Apply smart delays to avoid anti-crawl blocks.
  • Deduplicate articles before scraping.
  • Parse dates from natural language formats.
  • Generate summary reports of scraped articles.
  • Check for required Python dependencies.

How it works

This skill fetches WeChat articles for a specified date, using `curl` via subprocess for anti-crawl measures and adaptive delays. It filters out already scraped URLs and organizes the output into date-specific directories with Markdown files and metadata.

Inputs & outputs

You give it
Date (e.g., 'today', 'yesterday', '2026-01-20')
You get back
Markdown files of WeChat articles and metadata in a date-specific directory

When to use wechat-batch-crawl

  • Crawl daily WeChat articles
  • Collect articles by date
  • Fetch new content

About this skill

WeChat Batch Crawl Skill

Overview

批量爬取微信公众号文章,支持智能反爬、日期过滤、自动去重。

Quick Start

# 爬取今天的文章
python resources/wechat_batch_scraper.py --date today

# 爬取指定日期
python resources/wechat_batch_scraper.py --date 2026-01-20

# 仅列出文章(不爬取)
python resources/wechat_batch_scraper.py --date today --list-only

Natural Language Patterns

IntentSupported Phrases
爬取今天"爬取今天的微信文章" / "获取今天的文章" / "抓今天的公众号"
爬取昨天"爬取昨天的微信文章" / "获取昨天的文章"
爬取指定日期"爬取1月20号的文章" / "获取上周一的文章"
仅列出"今天有哪些文章" / "列出今天的文章" / "看看有啥新文章"
增量爬取"继续爬取" / "爬取新增的文章"

Decision Boundaries

✅ Claude May Decide

  • Date parsing from natural language formats
  • Output directory naming and organization
  • Retry strategy within configured limits
  • Log verbosity and report format

❌ Claude Must NOT Change

  • RSS feed URL configuration
  • Anti-crawl delays (must stay 5-15 seconds)
  • Max workers (must not exceed 3)
  • Retry limits (max 3 retries)
  • Request method (must use curl via subprocess)

Core Implementation

Anti-Crawl: Use curl via subprocess

result = subprocess.run(
    ['curl', '-s', '-A',
     'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36',
     url],
    capture_output=True,
    text=True,
    timeout=30
)

Smart Delay: Adaptive by time

def get_adaptive_delay(self):
    hour = datetime.now().hour
    if 9 <= hour <= 18:    return random.uniform(10, 15)  # 白天高峰
    if 19 <= hour <= 23:   return random.uniform(7, 12)   # 晚间
    return random.uniform(3, 7)                            # 深夜

Deduplication: Filter before scraping

def filter_existing(self, urls, output_dir):
    scraped_urls = collect_scraped_urls(output_dir)
    return [url for url in urls if url not in scraped_urls]

Hooks

Pre-check (hooks/pre_check.py)

def check_dependencies():
    required = ['bs4', 'html2text', 'feedparser']
    missing = [p for p in required if not is_installed(p)]
    if missing:
        print(f"缺少依赖: pip install {' '.join(missing)}")
        return False
    return True

Post-summary (hooks/post_summary.py)

def generate_summary(results):
    success = sum(1 for r in results if r['success'])
    print(f"完成: {success}/{len(results)} ({success/len(results)*100:.1f}%)")

Output Structure

output_dir/
└── 2026-01-20/
    ├── 001_文章标题.md
    ├── 002_文章标题.md
    └── _metadata.json

Workflow Integration

wechat-batch-crawl → content-summarizer → knowledge-manager
     (爬取)              (总结亮点)          (更新知识库)

Troubleshooting

问题解决方案
502 错误确认使用 curl,非 requests
频繁失败检查是否高峰期,增加延迟
重复爬取检查 output_dir 路径

When not to use it

  • When crawling platforms other than WeChat.
  • When anti-crawl delays are not needed.
  • When the maximum number of workers exceeds 3.

Limitations

  • RSS feed URL configuration must not be changed.
  • Anti-crawl delays must stay between 5-15 seconds.
  • Max workers must not exceed 3.

How it compares

This skill provides a specialized WeChat article scraping solution with built-in anti-crawl mechanisms, adaptive delays, and deduplication, offering a reliable data collection method unlike generic web scraping tools.

Compared to similar skills

wechat-batch-crawl side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
wechat-batch-crawl (this skill)06moReviewIntermediate
firecrawl-scrape57moReviewBeginner
crawl4ai218moReviewIntermediate
youtube-comments-api-skill02moReviewBeginner

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

firecrawl-scrape

parcadei

Scrape web pages and extract content via Firecrawl MCP

536

crawl4ai

basher83

This skill should be used when users need to scrape websites, extract structured data, handle JavaScript-heavy pages, crawl multiple URLs, or build automated web data pipelines. Includes optimized extraction patterns with schema generation for efficient, LLM-free extraction.

21137

youtube-comments-api-skill

aiskillstore

This skill helps users extract structured video list data and comment data from YouTube using the BrowserAct API. The Agent should proactively apply this skill when users request searching for YouTube videos and their comments, analyzing viewer sentiment for a specific video topic, gathering audienc

00

web-scraper

KevanPatira

Web scraping inteligente multi-estrategia. Extrai dados estruturados de paginas web (tabelas, listas, precos). Paginacao, monitoramento e export CSV/JSON.

00

zlibrary-to-notebooklm

zstmfhy

自动从 Z-Library 下载书籍并上传到 Google NotebookLM。支持 PDF/EPUB 格式,自动转换,一键创建知识库。

626

adaptyv

davila7

Cloud laboratory platform for automated protein testing and validation. Use when designing proteins and needing experimental validation including binding assays, expression testing, thermostability measurements, enzyme activity assays, or protein sequence optimization. Also use for submitting experiments via API, tracking experiment status, downloading results, optimizing protein sequences for better expression using computational tools (NetSolP, SoluProt, SolubleMPNN, ESM), or managing protein design workflows with wet-lab validation.

79

Search skills

Search the agent skills registry