Skip to content

zzht1/browserarticle_downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

微信文章链接批量导出工作流

目录结构

.
├── pipeline.py          ← 一键流水线(本项目核心,整合所有步骤)
├── 1clean.py            ← 步骤1独立脚本:提取链接
├── 2export_links.py     ← 步骤2独立脚本:抓取文章
├── 3_1extract_and_delete.py  ← 步骤3a独立脚本:清理失效文章
├── 3_2open_links.py          ← 步骤3b独立脚本:浏览器打开链接
└── README.md

快速开始(推荐)

安装依赖

pip install requests beautifulsoup4 markdownify

一键运行完整流程

python pipeline.py 你的链接文件.md

只运行部分步骤

# 只提取链接 + 导出文章(不打开浏览器)
python pipeline.py 链接.md --step 1,2

# 从已有 links.txt 开始导出
python pipeline.py 链接.md --links-file 链接.links.txt --step 2,3a

# 不自动打开浏览器
python pipeline.py 链接.md --no-browser

流程说明

输入文件(.md / .txt)
       │
       ▼
  步骤 1:clean
  提取所有格式的 URL → *.links.txt
       │
       ▼
  步骤 2:export
  逐条抓取文章正文 → exported_articles/*.md
  ├─ 成功 → 文章.md(含截断警告)
  ├─ failed_*.md      ← 失败清单(HTTP 错误等)
  └─ truncated_articles.md  ← 微信鉴权截断清单
       │
       ▼
  步骤 3a:extract_and_delete
  扫描所有 .md,检测失效词 → 删除 + 汇总
  └─ deleted_articles_summary.md
       │
       ▼
  步骤 3b:open_links(人工介入)
  剩余文章链接 → 浏览器逐一打开

输出文件说明

文件 说明
exported_articles/*.md 成功导出的文章
failed_YYYYMMDD.md HTTP 错误等失败链接清单
truncated_articles.md 微信鉴权截断的文章清单
deleted_articles_summary.md 已删除的失效/违规文章链接汇总

微信文章特殊说明

微信公众号文章(mp.weixin.qq.com)可能遇到以下情况:

情况 原因 处理方式
内容截断(⚠️ 微信需登录鉴权 truncated_articles.md,在微信内手动打开
已删除 / 违规 作者删除或平台屏蔽 步骤3a自动删除,见 deleted_articles_summary.md
HTTP 403 / 502 被反爬或服务器错误 failed_*.md,可稍后重试

根本解决方案(针对截断问题):在微信电脑版/网页版已打开文章后, 使用浏览器扩展(如 MarkDownload) 手动保存完整正文。


参数说明

python pipeline.py <输入文件> [选项]

参数:
  --output-dir DIR    导出目录(默认: ./exported_articles)
  --delay FLOAT       抓取间隔秒数(默认: 1.5,太快易被封)
  --timeout INT       请求超时秒数(默认: 20)
  --step STEPS        运行指定步骤,逗号分隔(默认: 1,2,3a,3b)
  --links-file FILE   跳过步骤1,直接指定已清洗的链接文件
  --no-browser        跳过步骤3b,不自动打开浏览器

反"静默失败"准则

本工作流严格遵循「闭环处理」原则:

  • 所有失败都有记录failed_*.md
  • 内容截断有标注:文章内嵌 ⚠️ 警告 + truncated_articles.md
  • 失效文章有备案:删除前提取链接到 deleted_articles_summary.md
  • 人工处理有入口:步骤3b 批量打开浏览器

追求 80% 自动化,同时显性化剩余 20% 的复杂例外,而不是将其掩盖。

About

微信文章链接批量导出流水线 — 一键整合 清洗链接 → 抓取正文 → 清理失效文章 → 浏览器打开剩余链接

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages