美文网首页
数据采集-微信公众号文章的完整爬取过程笔记

数据采集-微信公众号文章的完整爬取过程笔记

作者: neo_ng | 来源:发表于2018-10-23 16:41 被阅读156次

微信公众号文章的完整爬取过程笔记

outline

一.基于sougou-api实现文章的爬取
二.基于anyproxy和monkeyrunner的文章自动爬取

一.基于sougou-api实现文章的爬取

1.可以直接抓微信搜狗主页
2.使用已有的软件包 + 代理的方式
调用API,通过微信公众号的ID,获取该账号的部分文章
这种办法只能获取微信文章的临时链接,所以需要把html文本保存到下来

二.基于anyproxy和monkeyrunner的文章自动爬取

假设条件:你有一批微信公众号ID(eg:gh_1380fb0258f6)
硬件条件:一台普通PC(笔者使用windows系统),一台安卓手机(本人使用的是华为荣耀8lite)
尽量不要使用模拟器,笔者在使用模拟器登陆微信后发现账户被封!!!
目标:爬取该批微信公众号的所有历史文章并增量爬取

1.基于anyproxy爬取公众号的所有文章

这一步已经有大神已经实现,这里直接使用他的代码:wechat_spider 微信爬虫
具体实现过程可参考github,在这一步需要注意选择正确的IP

2.基于monkeyrunner实现爬取的自动化

(1) 手机开启开发者模式

目前笔者遇到的手机开启开发者模式的方式是“在系统版本号上点击7,8次”

(2) PC安装安卓开发套件

安卓sdk的下载与安装可以参考AndroidDevTools
安装是否成功的检测方法可参考:入门monkeyrunner1-monkeyrunner的录制以及回放

(3) 自动化爬取的流程
S1 使用微信的搜索框,通过微信公众号ID搜索到该账号
image
image
S2 点击进入该账号,下拉,点击全部文章,进入
image
S3 下拉,点击文章列表的某一篇文章,打开
image
S4 等待一段时间后回退至微信的首页,继续执行S1

爬虫抓取策略

  • 周期轮询
  • 事件驱动
  • 预测抓取
  • 周期轮询+事件驱动结合的方式
    1.搜狗API定时轮询任务,发现发布新文章的公众号后,将公众号ID推送ID队列
    2.ID队列,临时存储ID
    3.PC端定时从ID队列中拉取ID,并利用微信的搜索功能查询该公众号的信息,爬取公众号文章。

总结

微信公众号文章的爬取可以用于舆情监控
笔者认为有两种方式:
1.监控微信公众号文章的点赞数,发现"爆款"文章,监控爆款文章的主题或者事件
2.关注大批微信公众号,针对所有文章做聚类分析,发现热点主题和事件

相关文章

网友评论

      本文标题:数据采集-微信公众号文章的完整爬取过程笔记

      本文链接:https://www.haomeiwen.com/subject/cpuazftx.html