2020年了,微信公众号的文章越来越不好爬,不过有一种万无一失的方法,就是用 adb 去操作安卓手机,然后不断遍历所有公众号的历史文章,返回文章链接,把文章链接保存下来之后用 scrapy 框架或者是 requests 这些库去获取信息,毕竟文章详情页是没有反爬虫措施的(就算你用的是 requests 的默认请求头也不会被封)。

但我没有用 adb,并不是我觉得这种方法傻,而是我不会,并且我的方法可能更傻。

1 安装抓包工具

我使用的是 Charles,安装和使用教程就不发了,这里有一个非常详尽的教程:

MAC下最好用的抓包工具--charles简单操作教程

2 使用 Charles 抓包

我以电脑端的微信为例,手机端同理。

2.1 配置好 ip 代理

从上面那个链接中摘录而来:

其实浏览器的请求一般用浏览器的开发者工具就可以,当然charles也可以做到,使用方法呢,也很简单,将你链接的网络,配置网页代理,注意地址为你本机的ip地址,可以通过,ifconfig查看。

……

进入Charles-》Help-》SSL Proxying-》Install Charles Root Certificate ,会打开证书,安装进去,证书信任设置----勾上刚才安装的

……

Enable SSL Proxy

……

2.2 访问要爬取的公众号

打开微信电脑端,搜索想要爬取的公众号。

这里我就以隔壁舍友的公众号为例

然后点击上面的历史文章按钮,查看公众号的详细资料以及历史文章,多往下滚动刷新几次