Mac下Fiddler的安装、配置与使用
环境安装
Mono安装
首先,Mac下需要使用.Net编译后的程序,需要用到跨平台的方案Mono(现阶段微软已推出跨平台的方案.Net Core,不过暂时只支持控制台程序)。安装程。可以从 http://www.mono-project.com/download/#download-mac 地址下载。
安装完后,在Terminal里执行以下命令(注意MonoVersion的更换):
/Library/Frameworks/Mono.framework/Versions/<Mono Version>/bin/mozroots --import --sync
执行结果如下:
此步是为了从Mozilla LXR上下载所有受信任的root证书,存于Mono的证书库里。root证书能用于请求https地址。
接下来如果想要运行Fiddler,还需要把Mono加入到环境变量中。编辑.bash_profile文件:
sudo vi ~/.bash_profile
加入文本:
export MONO_HOME=/Library/Frameworks/Mono.framework/Versions/5.0.1
export PATH=$PATH:$MONO_HOME/bin
保存后重新打开Terminal,Mono环境已装好。
Fiddler的安装
从Fiddler官网 https://www.telerik.com/download/fiddler 下载Fiddler Everywhere的压缩包,按照指引安装即可
Fiddler运行
使用
1.打开HTTP。设置Trust root certificate
2. 点击connections,然后勾选 “allow remote computers to connect” 记住这边的端口号(8888)
开始抓吧
-
首先确保电脑和手机连在同一个WiFi下面
-
打开fiddle
-
获取电脑ip
-
打开cmd命令行
-
输入ifconfig,,找到ip地址
打开手机WiFi设置,找到你当前链接的WiFi
- 设置代理服务器为你电脑的ip,端口号为上面设置的端口号(默认为8888)
-
安装https证书
-
在手机浏览器上打开 你电脑ip:你设置的端口号
-
我的是192.168.31.146:8888
-
点击框框处安装证书
-
设置fiddle监听所有请求
-
选择all process
- 参数如下图
- 返回值因为我看到是json的格式了,所以直接以json的格式看。
-
那么直接模拟发送吧
-
直接看代码吧。。。
-
import requests
如果headers里面没有referer则会访问异常
referer表示上一个页面是什么。
headers = {
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Mobile/14E304 MicroMessenger/6.5.7 NetType/WIFI Language/zh_CN',
'Content-Type': 'application/x-www-form-urlencoded',
'Referer': 'https://servicewechat.com/wx80f809371ae33eda/23/page-frame.html',
}
url = 'https://mwx.mobike.com/mobike-api/rent/nearbyBikesInfo.do'
data = {
'longitude':'121.1883',# 经度
'latitude':'31.05147', # 纬度
'citycode':'021',
'errMsg':'getMapCenterLocation:ok'}
下面必须加上verify=False,表示不验证ssl,要不然一直报错。。。
z = requests.post(url,data=data,headers=headers,verify=False)
可以看到我们已经抓取了需要的数据,那么怎么抓取整个上海的摩拜单车情况呢??
只要获取上海的所有经纬度,然后替换上面data中的经度及纬度就可以了。。。
那么怎么获取上海的所有经纬度。。。
我发现挺难的。。。(有人拿到了请告诉我一声,谢谢)
然后我用了高德地图api的搜索功能,搜索了上海的所有小区的经纬度。一共898个,
然后查了这898个小区附件的摩拜单车情况....
总结
看完本编文章,你应该学会“如何抓取手机app的包”
其实挺简单的(就是你手机通过电脑上网,然后这台电脑上所有的请求都被抓下来了,那么你手机的请求自然也被抓下来了)
大家还可以试着抓抓知乎客户端的包。。。
更多fiddle的使用技巧,请善用百度、Google
最后所有代码在https://github.com/kimg1234/pachong/blob/master/mobai.py
reference:
- https://www.jianshu.com/p/5086646e9aa4
推荐阅读
-
Mac下Fiddler的安装、配置与使用
-
MAC下 QT5.11.0+opencv的安装与配置
-
Mac下eclipse的安装与配置
-
Linux下subversion的安装与配置 博客分类: Linux linuxsubversion配置安装新增版本库新增用户
-
MacBook Pro 下mysql 的安装与使用
-
MAC 下 Git的安装与基本配置 博客分类: Git安装 git mac 安装配置
-
MAC 下 Git的安装与基本配置 博客分类: Git安装 git mac 安装配置
-
Memcache升级版:CouchBase的安装配置与使用说明 博客分类: memcachecouchBase memcachecouchBasephp
-
Mac下MySQL的安装配置
-
在Windows系统下安装Thrift的方法与使用讲解