阅读文本大概需要 12 分钟。
一 爬虫万能公式
最近痴海接到一些新的需求,要抓取微信小程序上的内容。写过爬虫的同学都知道,无论什么爬虫大体的思路都是相的,都是要分析网络请求地址,模拟发送请求,然后解析返回的数据,最后保存相应的信息。
这里就可以给大家总结一个爬虫万能公式:
爬虫程序 = 网络请求 + 解析数据 + 保存数据
所有的爬虫都离不开这三个核心点,有些复杂的爬虫无非是在每个部分添加些别的内容。比如在网络请求部分,你需要添加请求头,伪装下自己的请求,让它看起来像一个正常人发送的请求。还有些网站需要破解验证码等等。而在解析数据中你需要熟悉至少一种解析方式,比如 Xpath、正则、JQuery、BS4 等。保存数据就需要你选择保存到哪里是 Mysql 还是 MongoDB 等等,甚至你要需要写些去重的策略等等。
每个部分细分开还有非常多的内容,但爬虫万变不离其宗,总的框架就是这三部分。细分的内容以后在慢慢写文章都教给大家。
今天我们就通过上面核心公式,通过如何抓取微信小程序,来讲解手机平台如何进行抓包。
二 微信小程序抓取
现在随着移动互联网的崛起,很多产品只有手机端,不会再花过多的时间和精力去搭建网页端的平台。所以做爬虫也一定要懂得如何在手机端上进行数据抓取。
手机端跟网页端的抓取大同小异,只不过手机端的请求路径,你是不能直观的看到。这里就需要借助一些代理软件来辅助分析手机端上的网络请求。
2.1 常用代理软件
手机上抓包原理其实很简单,就是在你手机上搭建一个代理,所有的请求都会走你搭建的代理,这样你就可以分析对应的请求。
而最经常用的代理软件有两个:1 Charles、2 Fiddler。
1 Charles
官网:
https://www.charlesproxy.com/
适用平台:Windows、Mac
Charles 俗称的花瓶,是在 PC 端常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。
具体的使用教程可以看下面的链接,非常的详细的介绍了 Charles 各方面的功能。
https://juejin.im/post/5b8350b96fb9a019d9246c4c
2 Fiddler
官网:
https://www.telerik.com/fiddler
适用平台:Windows
Fiddler 是一个 http 调试代理,以代理服务器的方