WeChat Article Detail Scraper — 公众号文章正文提取
Pricing
$0.06 / actor start
WeChat Article Detail Scraper — 公众号文章正文提取
EN — Extract a WeChat Official Account article by URL: body, title, author, account identity, head image, cover, album info, comment_id. ZH — 公众号文章详情抓取:正文/作者/账号/头像/封面/合集/评论 id。
Pricing
$0.06 / actor start
Rating
0.0
(0)
Developer
wang wei
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Pass a WeChat Official Account article URL, get the full body, author, account identity, head image, cover, album info, and comment ID. Short links auto-resolve. 64-bit IDs preserved as strings.
Why Use This Actor
| Problem | How This Actor Solves It |
|---|---|
| You have a WeChat article URL but only need the clean text | Returns HTML-stripped contentText ready for downstream NLP / summarization |
| Comments, head image, and account identity are scattered across multiple calls | One Actor call returns title, author, publish time, account nickName + ghUsername + alias, head image (round + HD), cover, album info, and comment_id |
| WeChat's 64-bit comment_id loses precision in JavaScript Number | All IDs are string-typed (JSON-safe per upstream convention) |
| You want to scan many articles without logging into WeChat | Single endpoint, no login required |
What You Get
For each article URL you push one row containing:
- Identity:
url,bizUin,itemIdx,msgId - Body:
title,summary,author,contentText(full plain-text body, HTML stripped),contentTextLength,contentTextTruncated - Account:
nickName,ghUsername,alias - Visuals:
coverUrl,headImage,headImageHd - Time:
publishTimeText(human-readable),publishTime(epoch seconds) - Engagement bridge:
commentId(feed to WeChat Article Comments Scraper for the comment thread) - Album:
album.{id, title, prevLink, nextLink}when the article belongs to a collection - Provenance:
sourceEndpoint(fetch_article_detailorfetch_article_detail_h5),collectedAt - Optional:
rawData(full upstream payload whenraw=true)
Plus a run summary (SUMMARY KV store record) with title, account, publish time, tier, free-tier counter.
Quick Start
1. Run with Example Input
{"url": "https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw"}
Click Start. Free users get 5 runs/day; paid users are billed per result (article-detail-result event).
2. Export Your Results
Open the Dataset tab → CSV / JSON / Excel export.
Input Reference
Top-Level Structure
{"url": "https://mp.weixin.qq.com/s/TSNQKkRpN1qbKsT7BvzqIw","engine": "default","maxContentChars": 0,"raw": "false"}
url — Article URL
- Required: yes
- Type: string
- Pattern:
^https?://.*mp\.weixin\.qq\.com - Description: WeChat Official Account article link. Short links (
mp.weixin.qq.com/s/<id>) and long links (with__biz) both work. Exactly 1 per run (one upstream call = one $0.01 charge).
engine — Endpoint variant
- Required: no (default
default) - Type: enum
default/h5 - Description:
defaultreturns alias + head image fields (recommended).h5is faster but alias and head image are alwaysnull.
maxContentChars — Content truncation cap
- Required: no (default
0= no truncation) - Type: integer
0-200000 - Description: Truncate
contentTextto this many characters. Set to e.g.3000if you only need the lead.contentTextLengthalways reports the original full length.
raw — Include raw upstream payload
- Required: no (default
false) - Type: enum
false/true - Description: When
true, the unprocessed upstreamdataobject is attached asrawDataon the pushed item. Useful for debugging or downstream pipelines that need the raw response. Default keeps datasets small.
Output Reference
Article record (one per pushed item)
| Field | Type | Description |
|---|---|---|
url | string | The article URL (input echo) |
bizUin | int | Account's internal numeric ID |
itemIdx | int | Position in the article batch (single-image articles = 1) |
msgId | string | number | Internal message ID (string when upstream returns a 64-bit value) |
sourceEndpoint | string | fetch_article_detail or fetch_article_detail_h5 |
title | string | Article title |
nickName | string | Account display name |
ghUsername | string | Account gh_… ID (feed to WeChat Account Profile Scraper) |
alias | string | null | Account micro-signal ID; null when using engine=h5 |
author | string | Article author byline |
summary | string | Article summary / lede |
publishTimeText | string | Human-readable publish time (e.g. 2025-03-05 12:22) |
publishTime | int | null | Epoch seconds (UTC+8) |
coverUrl | string | Cover image URL |
commentId | string | 64-bit comment thread ID — feed to the Comments Scraper |
headImage | string | null | Account round head image; null when using engine=h5 |
headImageHd | string | null | Account HD head image; null when using engine=h5 |
album | object | null | { id, title, prevLink, nextLink } for collection-bound articles |
contentTextLength | int | Full original body length (always reported) |
contentText | string | null | Plain-text body (HTML stripped). null only if upstream returns nothing. |
contentTextTruncated | boolean | true when maxContentChars clipped the body |
rawData | object | undefined | Full upstream payload (only when raw=true) |
collectedAt | string | ISO 8601 timestamp of when the item was normalized |
Run summary (SUMMARY KV record)
| Field | Description |
|---|---|
url, engine | Input echo |
title, nickName, ghUsername | Article identity |
publishTime, contentTextLength, contentTextTruncated | Metadata |
commentId, msgId | Bridge IDs for downstream Actors |
sourceEndpoint | Which upstream variant served the data |
tier | paid or free |
freeTierRunsToday | Free-tier counter (only present when tier=free) |
autoFilled | List of fields defaulted by the runtime (for support diagnostics) |
collectedAt | ISO 8601 timestamp |
Pricing & Limits
- Free tier: 5 runs/day, capped at the Actor's default KV store
- Paid tier: $0.01 per article (
article-detail-resultevent) - Hard caps: 1 URL per run (cost-control: one upstream request = one $0.01 charge)
- Upstream latency: ~30 s on the upstream side; this Actor uses a 60 s client timeout to avoid billing-without-response
Use it together with the other WeChat Actors
| Where in the pipeline | Actor | Console | Use it to |
|---|---|---|---|
| before / step ① | WeChat Article Search Scraper | opspilot.cc/wechat-article-search-scraper | step ① — find article URLs by keyword / business_type=article |
| sister Actor / step ② | WeChat Article Detail Scraper (this one) | opspilot.cc/wechat-article-detail-scraper | sister Actor — extract the full body, author, account, comment_id |
| after / step ③ | WeChat Article Comments Scraper | opspilot.cc/wechat-article-comments-scraper | step ③ — feed commentId to harvest the full comment thread |
| after / step ③ | WeChat Article Metrics Scraper | opspilot.cc/wechat-article-metrics-scraper | step ③ — feed url to harvest reads / likes / 在看 / shares |
| after / step ④ | WeChat Account Profile Scraper | opspilot.cc/wechat-account-profile-scraper | step ④ — feed ghUsername for account IP region / verification / linked Channels account |
You are here: WeChat Article Detail Scraper (step ②) — run this on its own for extract one article's body + identity + comment_id.
Support
Open an issue on the Apify Console run page for this Actor.