0x00 获取请求头
1. 设置Fiddler
到Fiddler官网下载最新版Fidder,然后安装。接下来对其进行设置。点击【Tools->Options…】打开设置面板。选择【HTTPS】选项卡,将【Decrypt HTTPS traffic】勾上;
选择【Connections】选项卡,将【Allow remote computers to connect】勾上,保存退出设置。记住端口号,一般默认8888即可。
2.设置手机
将手机连入电脑所在局域网(我这里是直接用电脑开启WiFi),进入到WiFi设置界面,如下图,代理选择【手动】,IP一般填写网关IP即可,如果手机上不显示,可以将鼠标放置Fiddler界面右上角【Online】处,即可查看到IP地址,端口填写刚刚设置的端口,这里是【8888】,点击保存。
打开手机浏览器,随便浏览个网址,这是浏览器会提示你有证书不受信任等风险,点击继续即可。
3.获取请求头
打开手机摩拜应用,这事会看到Fiddler捕获了很多请求,其中有很多是包含【mobike】字样,这就是摩拜的请求信息。
其中找到一个包含【nearby】字样的请求,这就是我们需要的自行车信息请求点看查看内容。
这就是我们需要的请求头的内容。到这一步,前期准备已经完成,接下来就该模拟请求获取单车信息了。
0x01 单车信息爬取
将刚刚捕获的请求头信息,用Python封装一下,便可以发起模拟请求,我这里去除了用户信息,虽然这样亦可以请求道,但是相比有用户信息的每次获取到的信息会更少: