---
name: wechat-article-extract
description: 从微信聊天记录导出文件中识别公众号文章链接或分享卡片，提取标题、公众号名称、发布时间、正文和图片，并保留原文链接。当用户要求整理、摘录或归档聊天记录里的公众号文章时使用。
---

# 公众号文章提取

从微信聊天记录导出文件（ZIP 或已解压的文本/图片）中找出所有公众号文章，逐篇提取成结构化结果。

## 输入

- 微信「合并转发」导出的聊天记录 ZIP，或其中解压出的文本文件、HTML 和图片附件。
- 文章可能以三种形态出现：
  1. 聊天记录里的 `mp.weixin.qq.com` 链接；
  2. 分享卡片（标题 + 公众号名 + 链接，可能带封面图）；
  3. 已随记录一起导出的文章正文或截图。

## 步骤

1. 扫描全部附件文本，找出公众号文章的链接和分享卡片，按聊天中的出现顺序编号。
2. 对每篇文章提取：
   - **标题**：卡片标题或正文首行标题；
   - **公众号**：卡片或正文中的账号名称；
   - **发布时间**：卡片或正文中的日期，没有就写「未标注」；
   - **正文**：如果记录里包含正文文本则整理成干净的段落；只有链接则标注「仅有链接，未含正文」；
   - **图片**：附件中属于该文章的图片文件名列表，按顺序排列；
   - **原文链接**：完整的 `mp.weixin.qq.com` URL。
3. 如果链接对应的正文不在附件中，不要编造内容——明确标注「仅链接，无法读取正文」。

## 输出

每篇文章一节，用 Markdown 输出：

```markdown
## 1. {标题}
- 公众号：{名称}
- 发布时间：{时间}
- 原文链接：{URL}
- 图片：{文件名列表或「无」}

{整理后的正文，或「仅有链接，未含正文」}
```

结尾附一个汇总表：编号、标题、公众号、是否有正文。

## 注意

- 只处理公众号文章；普通网页链接、小程序卡片不算，但在汇总表末尾列一行「跳过的其他链接」。
- 保持原文措辞，不做改写或评价。
- 图片引用使用附件内的原始文件名，不复制或重命名文件。
