如何实现微信公众号历史消息数据抓取并整理为excel表格

一、应用场景

作为新媒体运营人员或者数据分析人员,获取并分析自营公众号的营销数据与竞品公众号的营销数据可以为当前绩效与未来决策提供数据支持。

微信公众号作为主流新媒体平台之一,被专业新媒体人与各企业新媒体运营人员所重视。本文就是针对“如何实现微信公众号历史数据抓取并整理为excel表格”的问题,提出初步解决方案与改良方案。

二、难点分析

微信公众号历史消息数据是基于html5+ajax方式进行加载的。不过与普通微网站不同的是:微信公众号历史消息页只能在微信中打开,在其他浏览器中无法打开。所以,不能用普通爬虫工具直接爬取数据,如何爬取数据成为一个难题。

三、解决方案

注意:此教程不是小白教程,只是提供解决思路。欢迎与博主沟通探讨。

a) 历史消息数据抓包

首先感谢强大的数据抓包工具——Charless。微信公众号的数据是使用的https,要获取解密后的抓包数据,请自行百度或者googlecharless抓包https”。

抓包后的数据,第一屏是html页面(数据内容其实还是以json的形式存放的),其他的分页就是通过json数据进行返回。

b) 数据提取与整理为json

需要了解基本json结构。把多个数据包中文章列表的json数据整合在一起(如果数据量实在太大,可以把5-10页的数据整合为一组)。数据少的可以人工整理,数据多了,建议写几行代码进行数据提取吧。

c) Json数据转excel表格

推荐在线工具:https://json-csv.com/,可以实现json数据转为excel(而且可以下载文件),免费版的有总数据量限制,不过实践发现,可以通过换浏览器或者电脑临时完成数据量不是很大的转换工作。

四、方案改良

a) 历史消息数据抓包自动化

现尝试的几个抓包工具,还是Charless用地比较顺手,nodejs也有个开源服务可以用来抓包,经过修改可以实现抓包数据推送到自己的业务服务器。这样,人工的工作只剩下设置手机代理配置与手动浏览某个公众号的全部列表。

或者编程实现个代理功能也是不错的,至少获取数据包就不用这么费劲了。

进一步,如果能通过爬虫伪造头信息可能会欺骗微信服务器获取数据,配合脚本进行自动滚屏,逐步加载完历史数据。

b) 数据提取与整理为json,并转为excel的一体化

这部分,有点编程能力的小伙伴都可以自行完成。思路:识别数据文件提取有效json数据数据合并为json集合json数据解析为excel表格并保存。

进一步,列表数据中,缺乏点赞人数与阅读数等信息,可以通过爬虫爬取列表中正文URL的内容并分析——正文的访问就没有浏览器限制了。

© 2017, 李德涛博客. 版权所有.

One thought on “如何实现微信公众号历史消息数据抓取并整理为excel表格”

发表评论

电子邮件地址不会被公开。 必填项已用*标注