微信公众号作为一个重要的内容发布平台,汇聚了大量优质文章。对于数据分析、内容聚合、学术研究等场景,我们常常需要批量获取公众号文章的内容。然而,微信官方并未提供公开的API,手动复制粘贴又效率低下,且格式不一,本文将介绍一套基于Python的爬虫脚本,能够自动从公众号文章链接中提取标题、作者、正文、图片、发布日期等信息,并保存为结构化的JSONL格式,方便后续处理。
一、功能概述
该脚本针对微信公众号文章页面设计,主要提取完整的正文内容,包括图片,及部分字段:
title:文章标题
author:作者
official_account:公众号名称
is_original:是否为原创
publish_date:发布时间
content_text:正文纯文本(代码块保留换行)
images:图片列表,包含原链接和本地下载路径
此外,脚本会自动下载文章中的图片到本地images/目录下,并按文章标题建立子目录,避免重名。
二、技术栈与核心库
requests:发送HTTP请求,获取HTML
chardet:自动检测网页编码
readability-lxml:提取文章正文
BeautifulSoup4:解析HTML,定位元素
re:正则表达式匹配日期、IP属地等
uuid:为图片生成唯一文件名
os / json / urllib:文件操作、JSON处理、URL解析
三、效果展示
优点:可以完整抓取正文内容,包括图片,视频
缺点:无法抓取评论等元数据